レッスンに戻る

MAC アドレスのチェック

ネットワークインターフェースの MAC アドレス はコロンで区切られた6つの2桁の16進数から構成されます。

例: '01:32:54:67:89:AB'.

文字列が MAC アドレスかをチエックする正規表現を書いてください。

使用方法:

let regexp = /your regexp/;

alert( regexp.test('01:32:54:67:89:AB') ); // true

alert( regexp.test('0132546789AB') ); // false (コロンなし)

alert( regexp.test('01:32:54:67:89') ); // false (数字が5個, 6個である必要があります)

alert( regexp.test('01:32:54:67:89:ZZ') ) // false (ZZ)

2桁の16進数は [0-9a-f]{2} (フラグ i がセットされる想定)です。

数値 NN、その後5回続く :NN が必要です。

正規表現: [0-9a-f]{2}(:[0-9a-f]{2}){5}

あとは、一致がテキスト全体を捕らえるよう、先頭から開始し、末尾で終わるようにします: ^...$ でパターンをラップすればOKです。

最終的に:

let regexp = /^[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}$/i;

alert( regexp.test('01:32:54:67:89:AB') ); // true

alert( regexp.test('0132546789AB') ); // false (コロンなし)

alert( regexp.test('01:32:54:67:89') ); // false (5数字が5個, 6個である必要があります)

alert( regexp.test('01:32:54:67:89:ZZ') ) // false (ZZ)