用正则表达式匹配两个相邻的单词?
我有以下这段文字:
野狼队以2比1战胜了火焰队。
我需要从这段文字中提取出球队的名字和比分。在Python中,我这样做:
foo = re.findall(r'The (\w+) won (\d+) - (\d+) over the (\w+)\.', mystring)
现在的问题是,有些球队的名字中有空格,比如这样:
红翼队以4比3战胜了蓝夹克队。
我该如何写一个正则表达式来匹配这两种情况呢?
相关问题:
3 个回答
1
如果这个格式真的很一致的话,你可以稍微放宽一下你的表达方式,这样就能正常工作了:
foo = re.findall(r'The (.+) won (.+) - (.+) over the (.+).', mystring)
3
用 ([\w ]+) 代替 (\w+)。
3
你只需要修改一下你原来的正则表达式,把团队名称中的空格也包含进去就可以了:
foo = re.findall(r'The ([\w ]+) won (\d+) - (\d+) over the ([\w ]+)\.', mystring)