Python如何编写正则表达式来提取最后一个逗号后面的单词?

2024-04-20 03:17:15 发布

您现在位置:Python中文网/ 问答频道 /正文

如何编写正则表达式来提取字符串中最后一个逗号后面的单词? 例如在“Nelson,Nelson,New Zealand”中,如何从字符串中提取新西兰?在


Tags: 字符串new单词逗号nelsonzealand
3条回答

你不需要正则表达式。在

s = "Nelson,Nelson, New Zealand"
print s.split(",")[-1]
New Zealand

只需在","上拆分并获得最后一个元素。在

使用s.split(",")[-1].strip()删除空间。在

试试下面的正则表达式,它获取逗号后的最后一个单词并将其存储到一个组中。再次通过group()方法打印存储的组。在

>>> import re
>>> str = 'Nelson,Nelson, New Zealand'
>>> match = re.search(r'.*, (.*)$', str)
>>> match.group(1)
'New Zealand'

对于此类简单任务,请使用str.rpartition而不是正则表达式:

>>> s = "Nelson,Nelson, New Zealand"
>>> s.rpartition(',')[2].strip()
'New Zealand'

对于正则表达式,可以使用

^{pr2}$

去掉逗号后面的空格

>>> m = re.search(r'\s*([^,]*)$', s)
>>> m.group(1)
'New Zealand'

相关问题 更多 >