我试图使用Python regular expression
来验证变量的值。在
验证规则如下:
a-z
、A-Z
、0-9
和{blank
,no-
,no,
)中的任意一个start
与数字(0-9)
或字母表(a-z, A-Z)
或{(0-9)
或字母(a-z, A-Z)
或{目前我正在使用以下代码片段进行验证:
import re
data = "asdsaq2323-asds"
if re.compile("[a-zA-Z0-9*]+").match(data).group() == data:
print "match"
else:
print "no match"
我觉得应该有更好的方法来做以上的事情。我要找的东西如下:
^{pr2}$是否存在这样的内置函数?在
在正则表达式中,元字符
^
和$
分别表示“字符串的开始”和“字符串的结束”;因此,与其查看匹配的内容并将其与整个字符串进行比较,您只需要求正则表达式匹配以开始的整个字符串:另外,由于您只使用一次正则表达式—您编译并立即使用它—您可以使用方便方法
^{pr2}$re.match
将其作为一个步骤来处理:我想你在找
额外的
and data
只是返回数据,但我不确定您为什么需要它。检查重新匹配对None的结果足以检查字符串是否有效。在要确保整个字符串与您的模式匹配,请在正则表达式中使用字符串开头和结尾锚点。例如:
使其成为函数:
^{pr2}$示例:
作为补充说明,我更喜欢}而不是}对于这样的验证,}的含义可以根据使用的标志而改变,
\A
和{^
和{^
和{$
将在字符串末尾的换行符之前匹配。在相关问题 更多 >
编程相关推荐