如何使正则表达式不匹配超过 2 位数的特定数字。例如除 13 以外的任何数字。下面的第二行代码将无法匹配 10、11...,第三行将查找不以 1 开头但具有 3 的数字:
str = 'val=13'
regex = 'val=[^1][^3]'
regex = 'val=[^13]
re.search(regex, str)
请您参考如下方法:
使用先行断言:
In : re.findall('val=(?!13$)(\d{2,})', 'val=12')
Out: ['12']
In : re.findall('val=(?!13$)(\d{2,})', 'val=13')
Out: []
