プロジェクトのパスワード強度メーターをカスタマイズしようとしていますが、Javascript/jQuery の RegEx 構文で無効な量指定子エラーが発生し続けます。バックスラッシュのエスケープ、スラッシュの削除、スタックと Google での検索を試みました。これに関する情報をいくつか見つけましたが、その解決策は役に立たないようです。以下の関数コードで誰かがそれを見つけられることを願っています。どうぞよろしくお願いいたします。
$('#rPassword').keyup(function() {
return passwordChanged();
});
function passwordChanged()
{
var pwd = $('#rPassword').val();
var noofchar=/^.*(?=.{3,}).*$/;
var checkspace=/\s/;
var best = /(?=^.{8,}$)(?=.*\d)(?=.*\W+)(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$/; // 8 character minimum, upper-case letter, Lower-case letter, digit, special character
var strong = /(?=^.{8,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$/; // 8 character minimum, upper-case letter, lower-case letter, digit or special character. Examples: “15NotEasy”,”Bett.er-Yet”
var weak = /(?=^.{6,}$)(?=.*\d)(?=.*[A-Za-z]).*$/; // 6 character minimum, upper-case letter or lower-case letter, digit. Examples: “common1″,”7etmein”
var bad = /[a-zA-Z0-9\_\-]{3,}$/; // 3 characters or longer, digits, upper or lower case letters. Examples: “easy”,”8892″,”NOTSECURE”
if (true==checkspace.test(pwd)) {
$('#rPasswordStrength').animate({
width: '0%',
backgroundColor: '#eb001f'
}, 500)
} else if (false==noofchar.test(pwd)) {
$('#rPasswordStrength').animate({
width: '0%',
backgroundColor: '#eb001f'
}, 500);
} else if(best.test(pwd)) {
$('#rPasswordStrength').animate({
width: '100%',
backgroundColor: '#1ca456'
}, 500);
} else if(strong.test(pwd)) {
$('#rPasswordStrength').animate({
width: '75%',
backgroundColor: '#8eda2a'
}, 500);
} else if(weak.test(pwd)==true && bad.test(pwd)==true) {
$('#rPasswordStrength').animate({
width: '50%',
backgroundColor: '#ff7e0b'
}, 500);
} else if(bad.test(pwd)) {
$('#rPasswordStrength').animate({
width: '25%',
backgroundColor: '#eb001f'
}, 500);
}
}