我正在尝试编写一个将值与正则表达式进行比较以查看是否匹配的函数。问题是我有相当多的正则表达式相似,只有一个差异范围,{}
例如 ^[a-z]{0,500}$
&^[a-z]{0,200}$
是相似的正则表达式,只有范围/重复的差异。我正在尝试解决如何用一个函数处理这些正则表达式的问题。到目前为止,我已经编写了该函数。但我认为必须有一些比我在下面所做的更好的选择。如果没有指定最大值或最小值,它也应该能够处理。
def check(value, min=None, max=None):
regex = "^[a-z]"+"{"+min+","+max+"}$"
r= re.compile(regex)
if r.match(value):
return True
else:
return False