[英]Regex pattern to find all strings which contain at most 3 alphanumeric characters
[英]find all characters NOT in regex pattern
假设我有一个合法字符的正则表达式
legals = re.compile("[abc]")
我可以像这样的字符串中返回合法字符列表:
finder = re.finditer(legals, "abcdefg")
[match.group() for match in finder]
>>>['a', 'b', 'c']
如何使用正则表达式查找不在正则表达式中的字符列表? IE浏览器会返回
['d','e','f','g']
编辑:澄清一下,我希望找到一种无需修改正则表达式本身的方法。
否定角色类别:
>>> illegals = re.compile("[^abc]")
>>> finder = re.finditer(illegals, "abcdefg")
>>> [match.group() for match in finder]
['d', 'e', 'f', 'g']
如果您无法做到这一点(并且您只处理一个字符的长度匹配),则可以
>>> legals = re.compile("[abc]")
>>> remains = legals.sub("", "abcdefg")
>>> [char for char in remains]
['d', 'e', 'f', 'g']
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.