我正在尝试创建正则表达式以匹配以下模式:
00000.1.17372
例如:5 Numbers DOT 1 Number DOT 5 Numbers
我尝试了以下重新匹配:
find = re.match('d{5}.d{1}.d{5}', string)
在上下文中:
import re
string = "{u'blabla': u'asdf', u'dd': u'a', u'cotry': u'jjK', u'l': u'/q/iii:00000.1.17372', u'stfe': u'', u'fdfhdiufhi': u'GB', u'y_name': u'Unitm', u'mw': u'00000.1.17372'}"
find = re.match('d{5}.d{1}.d{5}', string)
print find
但是,这似乎不起作用,因为输出是:
None
与
re.findall
一起使用以下命令:参见regex demo
关键是:
\d
\b
单词边界,否则您将在2234567654
类字符串中找到匹配的5位数块re.findall
将返回所有非重叠匹配的列表(因为此模式中没有捕获组)Python代码示例:
您想要的模式是:
您需要对点进行转义,并对数字使用适当的标记,即
\d
相关问题 更多 >
编程相关推荐