要取反正则表达式 '^(?:100|\d{1,2})$' ,可以使用负向前瞻断言 (?!pattern) ,将整个表达式包裹在其中。这样就可以匹配不符合表达式的内容。

取反的正则表达式为:'^(?!^(?:100|\d{1,2})$).*$'

其中,(?!^(?:100|\d{1,2})$) 表示不以 100 或者 1-2 位数字开头和结尾的内容。

示例:

import re

pattern = '^(?!^(?:100|\d{1,2})$).*$'
test_cases = ['0', '99', '100', '101', '1000']

for test_case in test_cases:
    match = re.match(pattern, test_case)
    if match:
        print(f'{test_case} 不符合正则表达式')
    else:
        print(f'{test_case} 符合正则表达式')

输出结果:

0 符合正则表达式
99 符合正则表达式
100 不符合正则表达式
101 符合正则表达式
1000 符合正则表达式
正则表达式取反:匹配不符合 ^(?:100|\d{1,2})$ 的内容

原文地址: https://www.cveoy.top/t/topic/hq3u 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录