python正则表达式与可选的多个组

时间:2017-02-04 10:20:09

标签: regex regex-group

我试图匹配一些模式而我似乎无法使其发挥作用。

我试图匹配的模式是:

David C. Drummond
Sundar Pichai
Julie Spellman Sweet

我需要一个匹配所有3组的正则表达式。

我到目前为止所尝试的是:r"^(\w*)\W?(\w*|\w\.)\W?(\w*)"对于单词(\s\b)之间的空格以及贪婪和非贪婪的符号({?有很多变化{1}})在空格之后。

1 个答案:

答案 0 :(得分:0)

对于您显示的字符串,您可以使用^(\w+)\s+(?:(\w\.|\w+)\s+)?(\w+)$来匹配它们,并且第一个,中间名和姓氏包含在3个不同的组中,第二个名称是可选的。

请参阅https://regex101.com/r/O8NniM/1