我有这个正则表达式,我试图匹配任何除了以下数字
0|1|2|3|4|5|6
^(?!(0|1|2|3|4|5|6)).*
我可以让它在7或8或9上匹配,但是10因为它们以我不想匹配的数字开头后不起作用也不起作用。
例如,如果我的数字是22,那么它将匹配。如果我的号码是2,那么它就不匹配了。
我相信这是最快的正则表达式方法(检查0到30之间的每个数字时有127步)。
\d{2,}|[7-9]
\d{2,}
匹配任何2位数的数字。[7-9]
如果您想使用排除范围而不是可接受的范围,您也可以使用[^\D0-6]
。或者,如果你有更大的单位数字的机会,改变条件来获得[7-9]|\d{2,}
将提高性能。
[^0123456]|(\d{2,})
怎么样?这样你可以否定你不想要的那些,但它仍然匹配2位或更多位数的数字。
正则表达式:\b[7-9]\b|\b[1-9]\d+\b
试试这个^(?![0-6]$)\d+$
不匹配仅包含0-6的字符串,所有其他数字都可以。
使用此^(?!0*[0-6]$)\d+$
将匹配数字,大于6的数字。