Njia exec katika Misemo ya Kawaida ya JavaScript

Njia exec inafanya utafutaji katika mstari. Matokeo yake hurudisha kipande kilichopatikana na mifuko yake. Kila wakati utakapoitaja njia hii baadae itaanza kutafuta kutoka mahali ambapo kipande kilichopatikana cha mwisho kiliishia.

Tuangalie kwa mfano. Tuchukulie tuna mstari ufuatao:

javascriptlet str = '12 34 56';

Tuchukulie tuna mfuatayo wa usemi wa kawaida:

javascriptlet reg = /\d+/g;

Wacha tuite mfululizo njia yetu kwa mstari wetu:

javascriptlet res1 = reg.exec(str);
console.log(res1[0]); // 12

let res2 = reg.exec(str);
console.log(res2[0]); // 34

let res3 = reg.exec(str);
console.log(res3[0]); // 56

Baada ya matamshi matatu, kwa kuwa katika mstari wetu hakuna mechi zaidi na usemi wa kawaida, matamshi yafuatayo ya njia yatarudisha null:

javascriptlet res4 = reg.exec(str);
console.log(res4); // null

Huu upeo wa njia unaweza kutumika kwa urahisi katika kitanzi:

javascriptlet str = '12 34 56';
let reg = /\d+/g;

let res;
while (res = reg.exec(str)) {
  console.log(res); // [12], [34], [56] 
}

Inawezekana kupata sio tu mechi, lakini pia kuivunja vipande-vipande kwa mifuko:

javascriptlet str = '12 34 56';
let reg = /(\d)(\d)/g;

let res;
while (res = reg.exec(str)) {
  console.log(res); // [12, 1, 2], [34, 3, 4], [56, 5, 6] 
}
Задание 1

Umepewa mstari ufuatao:

javascriptlet str = '12:37:57 15:48:58 17:59:59';

Tafuta ndani yake vipande vyote vilivyo na wakati na kwa kila kipande kilichopatikana kivunje masaa, dakika na sekunde kwa mifuko.