我有一个简单的正则表达式问题让我发疯.我有一个变量x = "field1: XXXX field2: YYYY"
.我想要检索YYYY
(请注意,这是一个示例值).我的方法如下:
values = re.match('field2:\s(.*)', x)
print values.groups()
Run Code Online (Sandbox Code Playgroud)
它不匹配任何东西.我能帮忙解决这个问题吗?谢谢!
buc*_*ley 13
你的正则表达式很好
field2:\s(.*)
Run Code Online (Sandbox Code Playgroud)
试试这个代码
match = re.search(r"field2:\s(.*)", subject)
if match:
result = match.group(1)
else:
result = ""
Run Code Online (Sandbox Code Playgroud)
re.match()
仅匹配字符串的开头.你想要re.search()
改用.
此外,您应该使用逐字字符串:
>>> values = re.search(r'field2:\s(.*)', x)
>>> print values.groups()
('YYYY',)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
21723 次 |
最近记录: |