为名字和姓氏生成正则表达式

本文关键字:正则表达式 | 更新日期: 2023-09-27 18:18:27

我想为名字和姓氏创建一个正则表达式,只有2个单词,只有1个空格。

目前我的正则表达式在这里:https://regex101.com/r/WigXOo/1

我尝试了下面的正则表达式:

[A-Z][a-z]+('s|,)[A-Z][a-z]{1,19}

验证正确:

Sunil Kumar(正确)

但是它允许第三个名字,比如:Sunil Kumar 123(正确)

我希望我的结果如下:

正确的输出:

Sunil Kumar(正确)

错误输出:

  • Sunil Kumar 123(不正确)(我只想要第一和第二个名字)

  • SUnil Kumar(不正确)(只需从名字中去掉一个字母,第二个字母大写)

  • Sunil Kumar(不正确)(第一个和第二个名字之间只需要一个空格)(名字和第二个名字之间有2个空格)

请帮。

为名字和姓氏生成正则表达式

您可以在表达式中添加锚点以匹配整个输入,即^$,因此您的表达式将变成:

^[A-Z][a-z]+('s|,)[A-Z][a-z]{1,19}$