Metoden exec

Metoden exec utfører søk i en streng ved hjelp av et gitt regulært uttrykk. Resultatet som returneres er den funnete delstrengen og dens capture groups. Hvert påfølgende kall til denne metoden vil starte søket fra det stedet der den forrige funnete delstrengen sluttet. Hvis ingen treff blir funnet - returneres null.

Syntaks

javascriptregulært_uttrykk.test(streng);

Eksempel

La oss sjekke hvordan metoden fungerer:

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);

Resultatet av kodekjøringen:

javascript[12]
[34]
[56]
null

Eksempel

La oss bruke metoden i en løkke:

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

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

Resultatet av kodekjøringen:

javascript[12]
[34]
[56] 

Eksempel

De funne match-ene kan dekomponeres i capture groups:

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

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

Resultatet av kodekjøringen:

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

Eksempel

Ved hjelp av egenskapen lastIndex kan man angi posisjonen søket skal starte fra:

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);

Resultatet av kodekjøringen:

javascript[34]
[56]

Eksempel

Ved hjelp av modifikatoren y kan man låse startposisjonen for søket:

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);

Resultatet av kodekjøringen:

javascriptnull
[12]

Se også

  • metoden test,
    som sjekker en streng
  • metoden match,
    som søker etter treff i en streng
  • metoden matchAll,
    som søker etter alle treff i en streng
  • metoden replace,
    som utfører søk og erstatning
  • metoden search,
    som utfører søk
  • metoden split,
    som deler en streng