exec metodi

exec metodi setirde berlen regulýar ifade boýunça gözleg geçirýär. Netijede tapylan kiçi setir we onuň keseleri gaýtarylýar. Şonuň bilen her bir indiki bu metodiň çagyrylmagy gözlegi şol ýerden başlar, häzirki tapylan kiçi setiriň gutarandaky ýerinden. Eger gabat gelme tapylmasa - null gaýtarylýar.

Sintaksis

javascriptregulýar_ifade.exec(setir);

Mysal

Metodiň işini barlalyň:

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

let res1 = reg.exec(str);
console.log(res1);

let res2 = reg.exec(str);
console.log(res2);

let res3 = reg.exec(str);
console.log(res3);

let res4 = reg.exec(str);
console.log(res4);

Kody ýerine ýetirmegiň netijesi:

javascript[12]
[34]
[56]
null

Mysal

Metodydan aýlawda peýdalanalyň:

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

let res;
while (res = reg.exec(str)) {
  console.log(res);
}

Kody ýerine ýetirmegiň netijesi:

javascript[12]
[34]
[56] 

Mysal

Tapylan gabat gelmeleri keseler boýunça ýaýyp bolýar:

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

let res;
while (res = reg.exec(str)) {
  console.log(res);
}

Kody ýerine ýetirmegiň netijesi:

javascript[12, 1, 2]
[34, 3, 4]
[56, 5, 6] 

Mysal

lastIndex häsiýetiniň ýardamy bilen gözlegiň haýsy pozisiýadan başlamalydygyny berip bolýar:

javascriptlet str = '12 34 56';

let reg = /\d+/g;
reg.lastIndex = 2;

let res1 = reg.exec(str)
console.log(res1);

let res2 = reg.exec(str)
console.log(res2);

Kody ýerine ýetirmegiň netijesi:

javascript[34]
[56]

Mysal

y üýtgedijisiniň ýardamy bilen gözlegiň başlanýan pozisiýasyny berse bolýar:

javascriptlet str = '12 34 56';

let reg = /\d+/y;
reg.lastIndex = 2;

let res1 = reg.exec(str)
console.log(res1);

let res2 = reg.exec(str)
console.log(res2);

Kody ýerine ýetirmegiň netijesi:

javascriptnull
[12]

Şeýle-de görüň

  • test metodi,
    setiri barlaýar
  • match metodi,
    setirde gabat gelmeleri gözleýär
  • matchAll metodi,
    setirde ähli gabat gelmeleri gözleýär
  • replace metodi,
    gözleg we çalşygy ýerine ýetirýär
  • search metodi,
    gözleg geçirýär
  • split metodi,
    setiri bölýär