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
regulärer_ausdruck.test(string);
Beispiel
Lassen Sie uns die Funktionsweise der Methode überprüfen:
let 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:
[12]
[34]
[56]
null
Beispiel
Verwenden wir die Methode in einer Schleife:
let str = '12 34 56';
let reg = /\d+/g;
let res;
while (res = reg.exec(str)) {
console.log(res);
}
Ergebnis der Codeausführung:
[12]
[34]
[56]
Beispiel
Gefundene Übereinstimmungen können in Erfassungsgruppen aufgeteilt werden:
let str = '12 34 56';
let reg = /(\d)(\d)/g;
let res;
while (res = reg.exec(str)) {
console.log(res);
}
Ergebnis der Codeausführung:
[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:
let 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:
[34]
[56]
Beispiel
Mithilfe des Modifikators y
kann die Startposition
der Suche fixiert werden:
let 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:
null
[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