我想用这种字符串将名称拆分为数组。
Bol BolLouis King
Brandon ClarkeRui Hachimura
Michael Jeffery JordanDennis Rodman
至
['Bol Bol', 'Louis King']
['Brandon Clarke', 'Rui Hachimura']
['Michael Jeffery Jordan', 'Dennis Rodman']
我已经重新使用 ^[A-Z]\w+\s[A-Z][a-z]+
创建自己的正则表达式,但这仅匹配第一个名称,我无法捕获第二个或第三个名字。当名字上有 3 个单词(例如 Michael Jeffery Jordan
最佳答案
我建议利用积极的前瞻来概括您的模式。这允许您匹配紧随其后的其他表达式的表达式。在模式末尾使用 (?=someRegexp) 可以使结尾成为小写字符后紧跟大写字符的情况。然后您可以概括为任意数量的单词。
我还建议将其分为两种情况,因为表达式中的姓氏后面不会跟有大写字母,而是会跟有字符串结尾字符。您可以使用 or 来做到这一点: (someRegexp|someOtherRegexp)
关于javascript - 使用区分大小写字符的正则表达式拆分字符串上的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59136892/