⊗jsSpRENPB 132 of 294 menu

Nicht-erfassende Klammern in JavaScript Regex

Klammern ( ) erfüllen zwei Funktionen - das Gruppieren von Zeichen und die Erfassungsfunktion. Was aber, wenn wir gruppieren möchten, aber nicht erfassen wollen? Um dieses Problem zu lösen, wurden spezielle nicht-erfassende Klammern (?: ) eingeführt - sie gruppieren, aber erfassen nicht.

Beispiel

Im folgenden Beispiel benötigen wir die ersten Klammern zum Gruppieren und die zweiten zur Erfassung. Allerdings erfassen beide Klammernpaare Daten in die Erfassungsgruppen:

let str = 'abab123'; let res = str.match(/(ab)+([1-9]+)/);

Als Ergebnis werden sich in unseren Erfassungsgruppen folgende Daten befinden:

console.log(res[0]); // gibt 'abab123' aus console.log(res[1]); // gibt 'ab' aus console.log(res[2]); // gibt '123' aus

Beispiel

Lassen Sie uns die ersten Klammern so ändern, dass sie nur gruppieren, aber nicht erfassen:

let str = 'abab123'; let res = str.match(/(?:ab)+([1-9]+)/);

Als Ergebnis befindet sich unsere Zahl in der ersten Erfassungsgruppe:

console.log(res[1]); // gibt '123' aus
Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen