当前位置: 首页 > 面试题库 >

Python-如何使用re匹配整个字符串

邢承弼
2023-03-14
问题内容

我正在验证用户输入的文本,以便它仅接受字母,而不接受数字。到目前为止,当我输入数字(例如56)时,我的代码可以正常工作,它警告我只能输入字母,而当我输入字母时,它不会返回任何内容(就像它应该那样)。我的问题是,当我开始输入字母后跟数字时,它会接受它,例如(s45)。它的作用是接受第一个字母,但不接受整个字符串。我需要它来接受整个字符串。

def letterCheck(aString):
    if len(aString) > 0:
        if re.match("[a-zA-Z]", aString) != None:
            return ""
    return "Enter letters only"

问题答案:

将其固定到开头和结尾,并匹配 一个或多个 字符:

if re.match("^[a-zA-Z]+$", aString):

此处^将锚定到字符串的开头和$结尾,并+确保您匹配1个或多个字符。

不过最好还是str.isalpha()改用。无需在这里拿起沉重的正则表达式锤子:

>>> 'foobar'.isalpha()
True
>>> 'foobar42'.isalpha()
False
>>> ''.isalpha()
False


 类似资料:
  • 问题内容: 如何将一个字母字符与一个正则表达式匹配。我想要一个不在但不在的角色。我希望它与unicode兼容,这就是为什么我不能使用。 问题答案: 您的前两个句子相互矛盾。“在但不在”中包括下划线。我假设从您的第三句话开始,您不想下划线。 使用信封背面的维恩图会有所帮助。让我们看看我们不想要的: (1)不匹配的字符(即,不需要字母,数字或下划线的任何内容)=> (2)数字=> (3)下划线=> 所

  • 问题内容: 我有一个要从中提取3组的字符串: 月名称可能包含非ASCII字符,因此对我不起作用: 我可以使用,但它匹配数字和下划线: 我尝试使用[:alpha:],但是不起作用: 如果我能以某种方式匹配而没有,但我不知道如何。即使我知道如何做到这一点,是否也有像Python中那样可用的现成快捷方式? 问题答案: 您可以构造一个新的角色类: 代替。翻译成英文,意思是“任何不是非字母数字字符(与相同)

  • 我试图检查字符串是否包含完全匹配。例如: String str="这是我的字符串,具有-Policy和-p" 我怎样才能做到以下几点:

  • 问题内容: 我想用php代替完整的单词 示例:如果我有 我用 新文本应如下所示 新hello1您好,Helloz PHP返回 NEW hello1 hello,NEWz 谢谢。 问题答案: 您要使用正则表达式。该单词边界匹配。 如果包含UTF-8文本,则必须添加Unicode修饰符“ u”,以便不会将非拉丁字符误解为单词边界:

  • 比如说我有这个: 我想做两件事: 1) 使其成为当且仅当用户准确键入<代码>时!测试和其他内容,它将在通道中打印出测试 2)使其成为如果用户键入首先后跟空格和至少一个其他字符串字符,它将打印出——例如:a)不会打印出任何东西,b)(后跟一个空格)不会打印出任何东西,c)不会打印出任何东西,d)不会打印出任何东西,但是e)将打印出, f)将打印出, g)将打印出, and h)将打印出等。 我只知道

  • 本文向大家介绍使用Python 正则匹配两个特定字符之间的字符方法,包括了使用Python 正则匹配两个特定字符之间的字符方法的使用技巧和注意事项,需要的朋友参考一下 如下所示: 以上这篇使用Python 正则匹配两个特定字符之间的字符方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。