如何使正则表达式与超过2位数的特定数字不匹配.例如,任何数字,但13.下面的第二行代码不会工作它将不匹配10,11,......或者第三行将查找一个不以1开头但有3的数字:
str = 'val=13'
regex = 'val=[^1][^3]'
regex = 'val=[^13]
re.search(regex, str)
Run Code Online (Sandbox Code Playgroud)
使用前瞻断言:
In : re.findall('val=(?!13$)(\d{2,})', 'val=12')
Out: ['12']
In : re.findall('val=(?!13$)(\d{2,})', 'val=13')
Out: []
Run Code Online (Sandbox Code Playgroud)