Die exec-Methode

Die Methode exec führt eine Suche in einem String anhand eines gegebenen regulären Ausdrucks durch. Als Ergebnis werden der gefundene Teilstring und seine Erfassungsgruppen zurückgegeben. Dabei beginnt jeder folgende Aufruf dieser Methode die Suche an der Stelle, an der der vorherige gefundene Teilstring endete. Wenn keine Übereinstimmung gefunden wird, wird null zurückgegeben.

Syntax

javascriptregulärer_ausdruck.test(string);

Beispiel

Lassen Sie uns die Funktionsweise der Methode überprüfen:

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

Ergebnis der Codeausführung:

javascript[12]
[34]
[56]
null

Beispiel

Verwenden wir die Methode in einer Schleife:

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

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

Ergebnis der Codeausführung:

javascript[12]
[34]
[56] 

Beispiel

Gefundene Übereinstimmungen können in Erfassungsgruppen aufgeteilt werden:

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

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

Ergebnis der Codeausführung:

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

Beispiel

Mithilfe der Eigenschaft lastIndex kann die Position festgelegt werden, ab der die Suche beginnen soll:

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

Ergebnis der Codeausführung:

javascript[34]
[56]

Beispiel

Mithilfe des Modifikators y kann die Startposition der Suche fixiert werden:

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

Ergebnis der Codeausführung:

javascriptnull
[12]

Siehe auch

  • die Methode test,
    die einen String überprüft
  • die Methode match,
    die Übereinstimmungen in einem String sucht
  • die Methode matchAll,
    die alle Übereinstimmungen in einem String sucht
  • die Methode replace,
    die Suche und Ersetzung durchführt
  • die Methode search,
    die eine Suche durchführt
  • die Methode split,
    die einen String aufteilt