我在使用正则表达式匹配 Python 中的下划线字符时遇到问题。只是在 shell 中玩耍,我得到:
>>> import re
>>> re.match(r'a', 'abc')
<_sre.SRE_Match object at 0xb746a368>
>>> re.match(r'_', 'ab_c')
>>> re.match(r'[_]', 'ab_c')
>>> re.match(r'\_', 'ab_c')
Run Code Online (Sandbox Code Playgroud)
我预计其中至少有一个会返回一个匹配对象。难道我做错了什么?
作为更大代码的一部分,我试图检查字符串(文件名)是否以“.number”结尾 。但是,re.match(重新编译和匹配)不会匹配字符串末尾的模式。
代码:
import re
f = ".1.txt.2"
print re.match('\.\d$',f)
Run Code Online (Sandbox Code Playgroud)
输出:
>>> print re.match('\.\d$',f)
None
Run Code Online (Sandbox Code Playgroud)
任何帮助都感激不尽 !