Python regex matching on strings I don’t want
本问题已经有最佳答案,请猛点这里访问。
这是我第一次尝试将正则表达式与 Python 一起使用,或者根本没有,但它没有按预期工作。我想要一个正则表达式匹配任何字母字符或下划线作为第一个字符,然后是任意数量的字母数字字符或下划线。我使用的正则表达式是 ‘^[a-z_,AZ][a-z_A-Z0-9]*’,它似乎在 pythex.org 上产生了我想要的东西,但在我的代码中它匹配的是我所做的字符串不想要。
我的代码如下:
1
2 |
isMatch = re.match(‘^[a-z_A-Z][a-z_A-Z0-9]*’, someString)
return True if isMatch else False |
两个我不想要的匹配字符串示例是:”qq-q”和”va[r”。我做错了什么?
我认为您只是忘记了正则表达式末尾的
1
|
isMatch = re.match(‘^[a-z_A-Z][a-z_A-Z0-9]*$’, someString)
|
否则,它将匹配字符串的开头而不是整个字符串,这就解释了为什么它在
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/267845.html