Heim  >  Artikel  >  Web-Frontend  >  Detaillierte Erläuterung der Verwendung des g-Modifikators des regulären globalen Matching-Musters

Detaillierte Erläuterung der Verwendung des g-Modifikators des regulären globalen Matching-Musters

php中世界最好的语言
php中世界最好的语言Original
2018-03-30 13:46:222192Durchsuche

Dieses Mal werde ich Ihnen die Verwendung des regulären globalen Matching-Muster-g-Modifikators ausführlich erläutern. Was sind die Vorsichtsmaßnahmen bei der Verwendung des regulären globalen Matching-Muster-g-Modifikators? , lass uns einen Blick darauf werfen.

Regulärer Ausdruckg-Modifikator:

g-Modifikator gibt an, dass der reguläre Ausdruck einen globalen Abgleich durchführt, d Fahren Sie nach dem Abgleich fort.

Grammatikstruktur:

Konstruktor Modus:

new RegExp("regexp","g")

Objektliteralmodus:

/regexp/g

Browserunterstützung:

IE-Browser unterstützt dieses Metazeichen.
Firefox unterstützt dieses Metazeichen.
Google Chrome unterstützt dieses Metazeichen.

Beispielcode:

Beispiel 1:

var str="this is an antzone good"; 
var reg=/an/;
console.log(str.match(reg));

Der obige Code kann nur mit dem ersten „an“ übereinstimmen, da es kein globales Matching gibt Sobald der erste Abgleich erfolgreich ist, wird der Abgleich nicht mehr fortgesetzt.

Beispiel 2:

var str="this is an antzone good"; 
var reg=/an/g;
console.log(str.match(reg));

Der obige Code kann mit zwei „an“ übereinstimmen.

Das Folgende ist eine Ergänzung

In diesem Artikel wird die Verwendung des globalen Übereinstimmungsmusters/g von regulären Ausdrücken in js im Detail vorgestellt. Der Code lautet wie folgt:

var str = "123#abc"; 
var re = /abc/ig; 
console.log(re.test(str)); //输出ture 
console.log(re.test(str)); //输出false 
console.log(re.test(str)); //输出ture 
console.log(re.test(str)); //输出false

Wenn beim Erstellen eines regulären Ausdrucksobjekts der Bezeichner „g“ verwendet wird oder sein globaler Attributwert auf „true“ gesetzt ist, verwendet das neu erstellte reguläre Ausdrucksobjekt das Musterpaar abzugleichende Zeichenfolge für den globalen Abgleich. Im globalen Matching-Modus können mehrere Matches für die angegebene zu findende Zeichenfolge durchgeführt werden. Bei jeder Übereinstimmung wird der Wert der lastIndex-Eigenschaft des aktuellen regulären Objekts als Startposition für die Suche in der Zielzeichenfolge verwendet. Der Anfangswert des lastIndex-Attributs ist 0. Nachdem ein passendes Element gefunden wurde, wird der Wert von lastIndex auf den Positionsindex des nächsten Zeichens des passenden Inhalts in der Zeichenfolge zurückgesetzt. Er wird verwendet, um die Position zu identifizieren, an der mit der Suche begonnen werden soll Wenn der nächste Abgleich durchgeführt wird, wird der Wert von lastIndex des übereinstimmenden Elements auf 0 gesetzt. Wenn das globale Matching-Flag des regulären Objekts nicht gesetzt ist, ist der Wert des lastIndex-Attributs immer 0 und jedes Mal, wenn ein Match durchgeführt wird, wird nur das erste passende Element in der Zeichenfolge gefunden. Sie können den folgenden Code verwenden, um den Wert des entsprechenden lastIndex-Attributs während der Ausführung zu überprüfen:

var str = "123#abc"; 
var re = /abc/ig; 
console.log(re.test(str)); //输出ture 
console.log(re.lastIndex); //输出7 
console.log(re.test(str)); //输出false 
console.log(re.lastIndex); //输出0 
console.log(re.test(str)); //输出ture 
console.log(re.lastIndex); //输出7 
console.log(re.test(str)); //输出false 
console.log(re.lastIndex); //输出0

Ich glaube, Sie haben die Methode beherrscht, nachdem Sie den Fall in diesem Artikel gelesen haben Spannende Informationen, bitte beachten Sie andere verwandte Themen im Artikel über die chinesische PHP-Website!

Empfohlene Lektüre:

Detaillierte Erläuterung der Verwendung von regulären Mustermodifikatoren

Detaillierte Erläuterung der Verwendung von Metazeichen in regulären Ausdrücken (mit Code)

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Verwendung des g-Modifikators des regulären globalen Matching-Musters. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn