zpět k lekci

Ověřte MAC adresu

MAC adresa síťového rozhraní se skládá ze 6 dvouciferných hexadecimálních čísel oddělených dvojtečkou.

Příklad: '01:32:54:67:89:AB'.

Napište regulární výraz, který ověří, zda řetězec je MAC adresa.

Použití:

let rv = /váš RV/;

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

alert( rv.test('0132546789AB') ); // false (bez dvojteček)

alert( rv.test('01:32:54:67:89') ); // false (5 čísel, musí být 6)

alert( rv.test('01:32:54:67:89:ZZ') ) // false (ZZ na konci)

Dvouciferné hexadecimální číslo je [0-9a-f]{2} (předpokládáme, že je nastaven příznak i).

Potřebujeme toto číslo NN a pak :NN opakované pětkrát (další čísla).

Regulární výraz je: [0-9a-f]{2}(:[0-9a-f]{2}){5}

Nyní dosáhneme toho, aby shoda zachytávala celý text: začala na začátku a skončila na konci. To učiníme tak, že vzor obklopíme mezi ^...$.

Nakonec:

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

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

alert( rv.test('0132546789AB') ); // false (bez dvojteček)

alert( rv.test('01:32:54:67:89') ); // false (5 čísel, musí být 6)

alert( rv.test('01:32:54:67:89:ZZ') ) // false (ZZ na konci)