Двузначное шестнадцатиричное число -- это `pattern:[0-9a-f]{2}` (с учётом флага `pattern:/i`). Нам нужно одно такое число, и за ним ещё 5 с двоеточиями перед ними: `pattern:[0-9a-f]{2}(:[0-9a-f]{2}){5}` И, наконец, совпадение должно начинаться в начале строки и заканчиваться -- в конце. То есть, строка целиком должна подходить под шаблон. Для этого обернём шаблон в `pattern:^...$`. Итого, в действии: ```js run var re = /^[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}$/i; alert( re.test('01:32:54:67:89:AB') ); // true alert( re.test('0132546789AB') ); // false (нет двоеточий) alert( re.test('01:32:54:67:89') ); // false (5 чисел, а не 6) alert( re.test('01:32:54:67:89:ZZ') ) // false (ZZ в конце) ```