[英]Python regular expression searching for a number
我是regex的新手,但是通过字符串查找是否存在模式。
我尝试使用以下python代码:
prog=re.compile('555.555.555')
m=prog.match(somestring)
if m: print somestring
我正在尝试查找3组,每组5个,中间用任意数字分隔。 这段代码不会返回我正在寻找的东西。
有什么建议么?
编辑:
这是一些测试更基本版本的代码:
i,found=0,0
while found==0:
istr=str(i)
prog=re.compile(r'1\d2\d3')
m=prog.search(istr)
if m:
print i
found=1
break
i=i+1
这将返回1312而不是10203
您的正则表达式还可以(有点),但您使用的是错误的。 你需要
m = prog.search(somestring)
否则regex 只会在字符串的开头找到匹配项 。
另外,如果您确实只想在每555
秒之间允许一个数字,请使用
prog = re.compile(r'555\d555\d555')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.