我写了以下正则表达式来返回everything except alphabets & letters
。但是这个正则表达式不返回任何内容。这种情况的正则表达式可以是什么?
正则表达式:
r'[^[a-z]+]'
此致
答案 0 :(得分:2)
你正在搞乱角色类[]
。这是正确的(没有大写):
r'[^a-z]+'
如果你想匹配字符串的开头和结尾,包括大写字母。
r'^[^a-zA-Z]+$'
以下是您可以使用它的方法:
print re.findall(r'([^a-zA-Z]+)', input_string)
()
表示捕获组,以便在执行匹配后返回。
答案 1 :(得分:2)
这就是正则表达式引擎看到的正则表达式
[^[a-z]+ # Not any of these characters '[', nor a-z
] # literal ']'
所以,正如@Sajuj所说,只需删除外方括号[^a-z]+