我试图在JavaScript中创建一个正则表达式测试,测试字符串包含任何字符:如果你有兴趣:)
这是对我工作的一个很酷的密码更改应用程序
!$%^&*()_+|~-=`{}[]:";'<>?,./
更多信息如果你”重新感兴趣这里的代码的其余部分
我有一个表,列出了密码的要求和作为最终用户类型th e新密码,它将测试一个Regexes数组,并在相应的表格行中放置一个复选标记,如果它...检出:)我只需要在validation
阵列中添加这一个来代替第4个项目。
var validate = function(password){
valid = true;
var validation = [
RegExp(/[a-z]/).test(password), RegExp(/[A-Z]/).test(password), RegExp(/\d/).test(password),
RegExp(/\W|_/).test(password), !RegExp(/\s/).test(password), !RegExp("12345678").test(password),
!RegExp($('#txtUsername').val()).test(password), !RegExp("cisco").test(password),
!RegExp(/([a-z]|[0-9])\1\1\1/).test(password), (password.length > 7)
]
$.each(validation, function(i){
if(this)
$('.form table tr').eq(i+1).attr('class', 'check');
else{
$('.form table tr').eq(i+1).attr('class', '');
valid = false
}
});
return(valid);
}
是的,还有相应的服务器端验证!
这是相当有趣的是,回答你的问题出在冠军转义特殊字符和封闭斜杠除外 – sciritai
为什么不使用' .addClass(“check”)'和'.removeClass(“check”)'?在代码中看到if(someBoolean == true)'总会让我畏缩,如果(someBoolean)'。或者,更好的是,只要执行'$(“。form table tr”)。eq(i + 1).toggleClass(“check”,!! this);有效=有效&& !!这;'。 – gilly3
+1 @ gill3 thx代码审查 - 确实很棒的反馈。过去我已经使用过这些简短的方法。 – pixelbobby