Javascript Java脚本-正则表达式-希伯来文字符密码验证
我的密码验证有问题。 这是我的密码:Javascript Java脚本-正则表达式-希伯来文字符密码验证,javascript,regex,validation,passwords,Javascript,Regex,Validation,Passwords,我的密码验证有问题。 这是我的密码: function validatePassword(){ var password = document.getElementById("password").value; var re = /^(?=.*[0-9])(?=.*[!@#$%^&*])[a-zA-Z0-9!@#$%^&*]{6,16}$/; if(!password.match(re)){ producePromt("The passwor
function validatePassword(){
var password = document.getElementById("password").value;
var re = /^(?=.*[0-9])(?=.*[!@#$%^&*])[a-zA-Z0-9!@#$%^&*]{6,16}$/;
if(!password.match(re)){
producePromt("The password is invalid","commandPasswordPrompt","red");
return false;
}
producePromt("Password is OK","commandPasswordPrompt","green");
return true;
}
它说它只是无效的,所以我认为是因为正则表达式。
我问过你能不能在这里帮忙
非常感谢您的帮助 试试这个
// At least eight numbers or/and letters of English or Hebrew language
^[a-zA-Z0-9\u0590-\u05FF]{8,}$
或
或
用法:
var p = /^(?=.*[0-9])(?=.*[a-z|A-Z|\u0590-\u05FF]).{8,}$/g;
var s = "שלוםWorld2";
if(!p.test(s)){
console.log("Invalid password!");
}
|也许你可以检查两次,让它更简单。 例如:
var password = document.getElementById("password").value;
var re1 = /^a-zA-Z0-9!@#$%^&*]{6,16}$/;
var re2 = /[0-9]/
var re3 = /[!@#$%^&*]/
if(password.match(re1) && password.search(re2) >=0 && password.search(re3) >=0){
producePromt("The password is invalid","commandPasswordPrompt","red");
return false;
}
producePromt("Password is OK","commandPasswordPrompt","green");
您还可以告诉哪个密码字符串是无效的吗?您是否尝试过使用类似的方法来测试一些示例数据?还将为您提供解析正则表达式的文本解释。看起来您的正则表达式接受6到16个字符的密码,它必须包含数字、特殊字符,不一定包含字母。。。这就是您想要的吗?上面的表达式表示您的密码长度应该在6到16个字符之间,并且至少应该有一个数字和一个特殊字符才能有效。密码必须包含:英语或希伯来语(或组合)和数字。我不想要只有数字或只有字母。我不认为这是可行的。我检查了两个Regex的测试程序,结果什么都没用。@iYonatan你一定在开玩笑;)再次检查答案,检查用法和两个演示。我想我有一个功能的问题。你能检查我的功能并找出解决方案吗,因为我找不到。请帮助我。@iyona可以将您的功能粘贴到您的问题中,或者将其粘贴到jsbin.com上,并在此处共享链接
var p = /^(?=.*[0-9])(?=.*[a-z|A-Z|\u0590-\u05FF]).{8,}$/g;
var s = "שלוםWorld2";
if(!p.test(s)){
console.log("Invalid password!");
}
var password = document.getElementById("password").value;
var re1 = /^a-zA-Z0-9!@#$%^&*]{6,16}$/;
var re2 = /[0-9]/
var re3 = /[!@#$%^&*]/
if(password.match(re1) && password.search(re2) >=0 && password.search(re3) >=0){
producePromt("The password is invalid","commandPasswordPrompt","red");
return false;
}
producePromt("Password is OK","commandPasswordPrompt","green");