正则表达式验证每个单词的第一个字母是角js中的大写字母

时间:2015-04-27 11:13:04

标签: regex angularjs validation pattern-matching ng-pattern

我正在使用angularjs。我想对我的名字字段使用验证。我是正则表达式的初学者。 我希望每个单词的第一个字母都应该是大写字母。 对于E.g Naveen Kumar应该是有效的 和Naveen kumar无效。

我正在使用ng-pattern来验证名称字段。我应该使用什么正则表达式?感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

您可以将此正则表达式与ng-pattern

一起使用
ng-pattern="/^\b[A-Z][a-z]*(\s*\b[A-Z][a-z]*\b)*$/"

Demo

此正则表达式仅匹配标题大小写中包含单词(不包含数字或下划线)的条目。因此,Avinash Raj1Avinash_Raj Raj将无法通过验证。

示例代码:

<label>Single word:
    <input type="text" name="input" ng-model="example.text"
           ng-pattern="/^\b[A-Z][a-z]*(\s*\b[A-Z][a-z]*\b)*$/" required ng-trim="false">
</label>

答案 1 :(得分:0)

您可以使用

^\b(?:[A-Z]\w+\b(?:\s*)?)+$

请参阅Demo and Explanation

答案 2 :(得分:0)

^(\b[A-Z]\w*\s*)+$怎么样? 见https://regex101.com/r/qP5xG5/1