JavaScript регуляр ифодаларда номланган карманлар

Регуляр ифодаларда карманларга ном бериш мумкин. Бунинг учун махсус синтаксис мавжуд. Мана у: (?<name>pattern), бу ерда pattern - регуляр ифода, name эса карман номи.

Келтирилган мисолни кўрайлик. Бизда куйидаги сатр бор деб фараз қилайлик:

javascriptlet str = '2025-10-29';

Карманларига ном берилган регуляр ифода яратайлик:

javascriptlet reg = /(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})/;

Ушбу регуляр ифодани сатрга қўллаймиз:

javascriptlet res = str.match(reg);

Карман маълумотлари натижанинг groups хусусиятига объект шаклида тушади:

javascriptconsole.log(res.groups);

Объектнинг ҳар бир элементига алоҳида mуроожат қилишимиз мумкин:

javascriptconsole.log(res.groups.year);  // 2025
console.log(res.groups.month); // 10
console.log(res.groups.day);   // 29
Задание 1

Вақтни ифодаловчи сатр берилган:

javascriptlet str = '12:59:59';

Соат, минут ва сонияларни алоҳида номланган карманларга жойланг.