назад до уроку

Перевірити MAC-адресу

MAC-адреса мережевого інтерфейсу складається з 6 двоцифрових шістнадцяткових чисел, розділених двокрапкою.

Наприклад: '01:32:54:67:89:AB'.

Напишіть регулярний вираз, який перевіряє, чи є рядок MAC-адресою.

Приклад використання:

let 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 в кінці)

Двоцифрове шістнадцяткове число можна записати як [0-9a-f]{2}(припустивши, що задано прапорець i).

Нам потрібно число NN, а за ним :NN, повторене 5 разів (більше чисел);

Регулярний вираз: [0-9a-f]{2}(:[0-9a-f]{2}){5}

Тепер продемонструємо, що збіг має захоплювати весь текст: з самого початку до самого кінця. Робиться це через огортання виразу в ^...$.

В підсумку:

let regexp = /^[0-9a-f]{2}(:[0-9a-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 чисел, має бути 6)

alert( regexp.test('01:32:54:67:89:ZZ') ) // false (ZZ в кінці)