用正则表达式匹配两个相邻的单词?

2 投票
3 回答
816 浏览
提问于 2025-04-16 08:29

我有以下这段文字:

野狼队以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)

撰写回答