Heim > Web-Frontend > js-Tutorial > Hauptteil

So passen Sie Regex-Instanzen außerhalb von Anführungszeichen in JavaScript an: Eine umfassende Anleitung

Mary-Kate Olsen
Freigeben: 2024-10-25 07:04:29
Original
829 Leute haben es durchsucht

How to Match Regex Instances Outside Quotes in JavaScript: A Comprehensive Guide

Abgleich von Instanzen, die nicht in Anführungszeichen eingeschlossen sind

In einer früheren Frage wurde vorgeschlagen, alle Vorkommen eines regulären Ausdrucks abzugleichen und dabei Text in Anführungszeichen auszuschließen ist nicht machbar. Diese Einschränkung kann jedoch mithilfe einer komplexen, aber effektiven Regex überwunden werden.

Der Schlüssel zu dieser Regex liegt in der Beobachtung, dass ein Teilstring außerhalb von Anführungszeichen steht, wenn ihm eine gerade Anzahl von Anführungszeichen vorausgeht. Dies kann als die folgende Look-Ahead-Behauptung dargestellt werden:

(?=([^"]*"[^"]*")*[^"]*$)
Nach dem Login kopieren

Diese Behauptung stellt sicher, dass der vorhergehende Text eine gerade Anzahl von Anführungszeichen enthält, gefolgt von der aktuellen Teilzeichenfolge.

Um maskierte Anführungszeichen auszuschließen , müssen wir auch Backslashes berücksichtigen. Der reguläre Ausdruck wird etwas komplexer:

\+(?=([^"\]*(\.|"([^"\]*\.)*[^"\]*"))*[^"]*$)
Nach dem Login kopieren

Dieser reguläre Ausdruck geht zunächst über alle Nicht-Anführungszeichen (S) hinaus. Wenn auf einen Backslash oder ein Anführungszeichen gestoßen wird, wird entweder das nächste Zeichen ignoriert (wenn es sich um einen Backslash handelt) oder andernfalls zum nächsten nicht maskierten Anführungszeichen weitergegangen.

Obwohl dieser reguläre Ausdruck etwas kompliziert ist, stimmt er effektiv mit allen Instanzen überein des regulären Ausdrucks, der nicht in Anführungszeichen eingeschlossen ist, was das gewünschte Ergebnis in den JavaScript-Methoden „split()“ und „replace()“ ermöglicht.

Das obige ist der detaillierte Inhalt vonSo passen Sie Regex-Instanzen außerhalb von Anführungszeichen in JavaScript an: Eine umfassende Anleitung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!