使用 REGEX 的有效拉丁/英文个人姓名

我做了这个正则表达式

^[A-zÀ-ú]{3,} [A-zÀ-ú]{3,}.*

验证拉丁/英文名称。这个想法是这个人应该至少有两个名字,每个名字有 3 个字符。

问题是我做的方式,它不会处理像Maria da Mara或这样的名字Laura D'Avila

那么我该如何强制执行

  1. 所有字符都是有效的拉丁字母加上'

  2. 至少有两个三个字符的名字,一个应该是第一个,另一个无所谓在什么位置

如何解决这个难题?

谢谢


回首忆惘然
浏览 70回答 1
1回答

不负相思意

您的正则表达式没有涵盖两种情况。它不匹配',你可以简单地将它添加到你匹配的字符列表中。“Maria da Mara”有 2 个字符。也许减少第二个匹配组中的最少字符数。^[A-zÀ-ú]{3,}&nbsp;[A-zÀ-ú']{2,}.*您也可以添加一个命名的捕获组,将第一个词作为名字,将任何后续匹配项作为姓氏。^(?<first_name>[A-zÀ-ú]{3,})&nbsp;(?<last_name>[A-zÀ-ú']{2,}.*)https://regex101.com/r/YZFThW/2
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript