我需要分割一个全名。我知道这个问题一再被问到,但我找不到我需要的解决方案。
https://regex101.com/r/PvDIPA/1
我有一个全名:'名字中间名姓氏'
除了第一个名字之外,我需要将所有内容放入第1组
我已经尝试过这个RegEx:(\ s + \ S *)$但是它只提供了'姓氏'在第1组中,我需要' Middlename姓氏'成为第1组。
我希望你能提供帮助。
答案 0 :(得分:0)
您是否在寻找简单的内容:(\s+\S*){2}$
?
https://regex101.com/r/PvDIPA/2
请注意,这只适用于某人有一个中间名的情况。
也许这更适合你:^\w+((?:\h+\w+)+)$
https://regex101.com/r/PvDIPA/4
请注意,我在这里使用了\h
而不是\s
,因为我使用带有//gm
标记的regex101,因此\s
也会匹配行尾导致第一场比赛也吃第二线。
答案 1 :(得分:0)
[^ ]+ +((?:\w+ *){1,2})
<强>用法强>
[^ ]+ +
匹配所有内容,包括首次出现的空格字符
((?:\w+ *){1,2})
捕获1或2次出现的任何字母数字字符,后跟零个或多个空格字符(外部括号为捕获组,带有?:
的内部括号为非-capturing group在演示页面上查看更完整的说明)
还允许名称之间存在多于1个空格