为什么 python 正则表达式匹配函数匹配那个特殊字符?
Why python regex match function matches that special character?
我有正则表达式模式 "^[a-zA-z0-9]+$"
据我了解,它应该描述一个词或类似的东西。
我尝试验证 "counter"
:
这样的字符串
re.match("^[a-zA-z0-9]+$", "counter")
# Result: <_sre.SRE_Match object at 0x000000AA2053C578> #
如果我有像 "/"
这样的特殊字符,它将不匹配(returns 没有)。
re.match("^[a-zA-z0-9]+$"), "coun/ter")
但如果我尝试这样做:
re.match("^[a-zA-z0-9]+$", "coun[ter")
# Result: <_sre.SRE_Match object at 0x000000AA2053C440> #
再次匹配,我不明白为什么?
你的正则表达式应该是:
re.match('^[a-zA-Z0-9]+$', "coun[ter")
没有
re.match('^[a-zA-z0-9]+$', "coun[ter")
当你有 A-z
时,它会捕获从 A
(ASCII 65) 到 z
(122) 的所有内容,并且也匹配 [
(91)。
我有正则表达式模式 "^[a-zA-z0-9]+$"
据我了解,它应该描述一个词或类似的东西。
我尝试验证 "counter"
:
re.match("^[a-zA-z0-9]+$", "counter")
# Result: <_sre.SRE_Match object at 0x000000AA2053C578> #
如果我有像 "/"
这样的特殊字符,它将不匹配(returns 没有)。
re.match("^[a-zA-z0-9]+$"), "coun/ter")
但如果我尝试这样做:
re.match("^[a-zA-z0-9]+$", "coun[ter")
# Result: <_sre.SRE_Match object at 0x000000AA2053C440> #
再次匹配,我不明白为什么?
你的正则表达式应该是:
re.match('^[a-zA-Z0-9]+$', "coun[ter")
没有
re.match('^[a-zA-z0-9]+$', "coun[ter")
当你有 A-z
时,它会捕获从 A
(ASCII 65) 到 z
(122) 的所有内容,并且也匹配 [
(91)。