2011-08-12 javascript
パスワードルールがこういう場合、
正規表現で書くとこうなる。
function check1( pass ) { return /^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z]).{8,}$/.test( pass ); } check1( 'abcdefg1' ); // false check1( 'Abcdefg1' ); // true
ただし、IE6 と IE7 だと動かない(全部 false が返ってくる)。なのでクロスブラウザ対応させるにはきったないけどこんな感じで書くしかない。
function check2(pass){ return pass.length >= 8 && /[0-9]/.test(pass) && /[a-z]/.test(pass) && /[A-Z]/.test(pass); } check2( 'abcdefg1' ); // false check2( 'Abcdefg1' ); // true
処理の中身はわかりやすいっちゃわかりやすいけど。
あー、IE6死んでほしい