1

私の場合、正しい正規表現を見つけることができませんでした。私はほぼ完璧だと思いましたが、それでも先頭のスペースで合格です。

要件:

var regex = /^\s*(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]+)\s*$/;

var passwd = "abcdefg12345" //Passes
var passwd = " abcdefg12345" //Does not pass
var passwd = "abcdefg 12345" //Does not pass
var passwd = "abcdefg12345 " //Passes but should not

何かアドバイスはありますか?

また、長さの最小要件を追加したいのですが、どのようにすればよいですか?

4

1 に答える 1

1

先頭または末尾のスペースを避けたい場合は、最後の\s. パスワードの最小長を設定するには、+数量詞を{n,}に変更します。nは最小長です。

たとえば、次のパターンは、少なくとも 1 つの文字と少なくとも 1 つの数字を含む 5 文字以上の英数字の任意のシーケンスに一致します。

/^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]{5,})$/
于 2014-01-16T18:13:18.900 に答える