要实现的效果
匹配不含指定单词的字符串,例如:不含’abc’的字符串,则‘defg’满足条件,‘111abc222’,‘111abc’,'abc222’不满足条件
方法
使用^(?!.*abc).*$
,其中的abc为要排除的字符串
示例
import re
partten = r'^(?!.*abc).*$'
strs = ['abc222', '111abc222', '111abc', 'defg']
for i in strs:
print(re.findall(partten, i))
输出结果
[]
[]
[]
['defg']
说明只有’defg’匹配成功,结果正确
分析
^
和$
表示从字符串开头开始,匹配到结尾
(?!.*)
表示排除形如’…abc’的部分
后面的.*
表示’abc’后面还可以有内容
参考链接
https://wwwblogs/wangqiguo/archive/2012/05/08/2486548.html
更多推荐
Python正则表达式排除指定字符串
发布评论