我正在尝试编写一个正则表达式来限制字符串中的数字序列。对于示例字符串,如下所示
abc12345def
abc 4567 fgt
45679854 khf
因此,如果有超过5个连续数字,我不应该允许它们。上面的例子应该返回
true
true
false
请帮帮我。
答案 0 :(得分:0)
只需使用\d{6,}
之类的正则表来查找超过5个数字的块,并检查此模式是否可以在字符串中找到 。这是一个使用Python的例子:
>>> strings = ['abc12345def', 'abc 4567 fgt', '45679854 khf']
>>> [re.search(r"\d{6,}", s) is None for s in strings]
[True, True, False]
答案 1 :(得分:0)
正则表达式[0-9] {5,}将捕获具有超过5个后果数的任何内容。
>>> print re.search("[0-9]{5,}", "gon1234")
None
>>> print re.search("[0-9]{5,}", "gon12345")
<_sre.SRE_Match object at 0x024458E0>
>>>
工作示例:
import re
inputText = "gon12345"
if re.search("[0-9]{5,}", inputText):
print "More than 5 numbers!"
else:
print "Less than 5 numbers"
答案 2 :(得分:0)
这适用于我的情况。
^((?!\ d {5})。)* $
这是&#34; \ d {5,}&#34;的倒数。
希望它有所帮助。