2014-06-18 64 views
-1

我正在创建一个网络商店,我需要使用JavaScript验证输入,因此用户不必提交表单以提供PHP错误(尽管我也在使用PHP验证表单)。什么是最好的正则表达式来验证名称?

我来到得到的是下面的正则表达式:

/^[a-zA-Z]+$/ 

但上述正则表达式将只允许字母字符,而我也希望允许的字符,如'-因为明显的名称也可能包含这两个字符。我的问题是,如何使正则表达式允许alpha字符和上面的两个字符。

除此之外,我还有一个问题刚刚出现在我的脑海里,ă等字符会通过上面的验证?

+8

验证名最好的正则表达式是''/^.*$/除非你很酷与恨中国人,日本人和韩国人,任何其他人的名字是用非拉丁字母书写的。 –

+0

我会建议不要验证名称。何必? –

+0

你真的需要限制他们的名字输入到“正确的”名字吗?让他们担心他们为什么要在他们的名字中加一个数字,这不会破坏你的应用程序。 – ajp15243

回答

0

将它们添加到您的字符组,像这样

/^[a-zA-Z'-]+$/ 
+1

应该注意的是''''一般应该在'[]'字符类的末尾或开头,如果它被当作文字'-'来处理,以避免无意的字符范围。 – ajp15243

+0

你是对的.. – nozzleman

+2

我会接受这个,因为它回答了最初的问题,但我明白它没有必要验证名称。 –