该字符串包含一个名称,其中第一部分对应于名称,第二部分对应于姓氏。
正则表达式必须验证以下格式:
"Surname1 Surname2, Name1 Name2"
"Surname1, Name1 Name2 Surname2"
无效的字符串:
"Surname1 Surname2 Name1 Name2"
"Surname1, Surname2, Name1 Name2"
"Surname1 Surname2 Name1 Name2,"
我尝试以下操作: /([\w][\,][\s]{1}\b)/
,但无效
我感谢任何帮助。
答案 0 :(得分:1)
您可以使用此正则表达式:
/\b\w+\s+\w+\s*,\s*\w+\s+\w+\b/
答案 1 :(得分:0)
如果您想支持名称中的数字,例如上面的示例。
readAsBinaryString
或者名称之间是否允许任何类型的空格
var validName = function (name) {
return /^\w+ \w+, \w+ \w+$/.test(name);
};
或者如果您只想允许美国字母
validName = function (name) {
return /^\w+\s\w+,\s\w+\s\w+$/.test(name);
},
答案 2 :(得分:0)
我找到了一个可以验证这两种情况的解决方案:
这是正则表达式:/\b\w+\s*\w*,\s\w+\s\w+\s*\w*\s*\w*\s*\w*\s*\w*$\b/