我正在寻找 python 中的 regex 来匹配 19 之前和 24 之后的所有内容。
文件名为 test_case_*.py,其中星号是 1 位或 2 位数字。 例如:test_case_1.py、test_case_27.py。
最初,我认为像[1-19] 这样的东西应该有用,但结果比我想象的要难得多。
有没有人为这种情况制定解决方案?
PS:即使我们可以为数字 x 之前的所有数字找到一个正则表达式,为数字 y 之后的所有数字找到一个正则表达式,我也没问题。
请您参考如下方法:
我不会使用正则表达式来验证数字本身,我只会使用正则表达式来提取数字,例如:
>>> import re
>>> name = 'test_case_42.py'
>>> num = int(re.match('test_case_(\d+).py', name).group(1))
>>> num
42
然后使用类似的东西:
num < 19 or num > 24
确保num已验证。这样做的原因是,适应执行此操作的正则表达式比适应类似 num < 19 or num > 24 的正则表达式要难得多。 .
