2016-11-27 9 views
0

私は強度のパスワードテストに取り組んでいます。パスワードに大文字と小文字があるかどうかを確認しようとしています。私は2つの正規表現を使用しています、そして、彼らはほとんど働いています。パスワード強度正規表現の数字

var upper = false; 
 
    var lower = false; 
 
    var upperCase= new RegExp('[^A-Z]'); 
 
    var lowerCase= new RegExp('[^a-z]'); 
 
    
 

 

 
    if (password.match(upperCase)){ 
 
     upper = true;  
 
    } 
 
    if (password.match(lowerCase)){ 
 
     lower = true; 
 
    }

私は、「1」のように、数字、または単に数字を入力上限と真なると下限てる:ちょうどここにコードで。

私は正規表現ではあまりよくありません。間違えましたか?

+2

'[^ ...]'反転文字クラスです。それはセット内の*ではない文字にマッチします。 – melpomene

答えて

0

は以下を見てみましょうこれはtestを使ってパスワードに大文字と小文字が含まれているかどうかのブール値を返します。両方の正規表現をさまざまなパスワードに対してどのようにテストするかがわかります。

var upperCase= new RegExp('[A-Z]'); 
 
    var lowerCase= new RegExp('[a-z]'); 
 
    
 

 
function test(password) { 
 
    return [ upperCase.test(password), lowerCase.test(password)]; 
 
    } 
 

 
console.log(test("Abc")); 
 
console.log(test("abc")); 
 
console.log(test("123"));

0

コード行ごとに支払われない限り、あなただけで書くことができる:

var upper = password.match(/[A-Z]/); 
var lower = password.match(/[a-z]/); 

をこれも一致(別名;あなたupperCase正規表現マッチ非大文字の文字を)否定あなたが[^]を使用してコードのバグを修正し

関連する問題