【发布时间】:2020-05-07 18:57:56
【问题描述】:
我有这个词:word = 'ROTONDE04)'。我想把它清理干净,只保留字母。
因此我尝试了:
>>> re.search('[^a-zA-Z].', word)
<re.Match object; span=(7, 9), match='04'>
为什么re.search没有返回括号?它不属于我的班级[^a-zA-Z]。
我想避免使用re.sub。
【问题讨论】:
-
此正则表达式从字符串的开头搜索不是
a-z或A-Z的任何字符,然后是任何其他字符(.)。它与04匹配,然后停止搜索。你能解释一下为什么你认为它会做一些不同的事情吗? -
第二个链接好像更好,为什么
04之后就停止搜索了? -
因为这就是
re.searchis supposed to do。有关替代方案,请参见第一个链接。