2016-02-27 92 views
3

我的正则表达式不是很好,我一直试图通过在线搜索来解决这个问题。如何检查输入值(如密码)是否至少包含一个大写字母?正则表达式来检查密码是否包含至少一个大写字母

所以,如果我的密码被存储在一个变量:

var pass = $("#inputPassword").val(); 

会我正则表达式是什么,如果我要使用:

regex.test(pass); 

注意,是我检查的唯一条件,密码是否至少包含一个大写字母,没有其他。

回答

3

我只是简单地检查它是否包含任何[A-Z]字符范围。

if (/[A-Z]+/.test($("#inputPassword").val())) { 
    // Successful match 
} else { 
    // Password doesn't contain at least one capital letter 
} 
1

/[A-Z]+/应该可以解决大部分问题。不过,不知道js中的unicode支持,但我认为你必须从你希望支持的unicode大写字符组范围内构建一个正则表达式(请参阅此有用的表reference)。如果你想这样做,你也可以看看这个叫做regenerate的漂亮工具。

1

另一个正则表达式尝试:

var pass = $("#inputPassword").val(); 
var regex = new RegExp(/^(.*[A-Z].*)$/); 
var valid = regex.test(pass) 
相关问题