【发布时间】:2015-10-10 15:04:05
【问题描述】:
我尝试验证名称字段,我希望允许最终用户在此字段中添加任何内容,例如 Merianos Nikos、Μέριανος Νίκος(希腊语)或任何其他语言的字符以相同的形式。
形式为首字母大写,单词其余字母小写,至少两个单词。
目前,我有这个正则表达式 /^([A-Z][a-z]*((\s)))+[A-Z][a-z]*$/ 可以完美地与英语一起使用,但不适用于希腊语,也许还可以与其他语言一起使用。
最后,我想验证另一个至少有一个单词的字段,第一个字母大写,但是这个字段也可以包含单词后面的字符。
目前我使用的 followign 正则表达式 /^[\s\w\.\-_]+$/ 有效,但我又遇到了希腊语和其他语言的问题。
【问题讨论】:
-
什么语言用于运行正则表达式? PHP 还是 JS?
-
你可以访问 JS 中的 XRegExp 吗?你可以使用
XRegExp('^(\\pLu\\pLl*\\s)+\\pLu\\pLl*$');。 -
你应该看看 unicodes:kourge.net/projects/regexp-unicode-block。例如:
[\u0600-\u06FF] -
@VictorStanciu 感谢您的精彩帖子,我只是想有像“Jean-Baptiste d'Artagnan”这样的名字,其中包括一些非字母字符。
标签: javascript php regex