我想为名字和姓氏创建正则表达式,只有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 (正确)
InCorrect Output:
Sunil Kumar 123 (不正确)(我只想要名字和第二名)
SUnil Kumar (不正确)(第1名只需要1个字母,第二名只需要第2个字母)
Sunil Kumar (不正确)(第1名和第2名之间只需要一个空格)(名字和名字之间有2个空格)
请帮忙。
答案 0 :(得分:2)
您可以在表达式中添加锚点以匹配整个输入,即^
和$
,这样您的表达式就会变为:
^[A-Z][a-z]+(\s|,)[A-Z][a-z]{1,19}$