Heim > Web-Frontend > js-Tutorial > Wie implementiert man Lookbehind-Assertionen in JavaScript Regex?

Wie implementiert man Lookbehind-Assertionen in JavaScript Regex?

Linda Hamilton
Freigeben: 2024-11-09 17:16:02
Original
1003 Leute haben es durchsucht

How to Implement Lookbehind Assertions in JavaScript Regex?

Javascript Regex: Alternative zu Lookbehind-Assertions

Regex-Implementierungen in Javascript fehlt das Konzept von Lookbehind-Assertions. Dies stellt eine Herausforderung beim Erstellen regulärer Ausdrücke dar, die diese Funktionalität erfordern. Glücklicherweise gibt es alternative Methoden, um ähnliche Ergebnisse zu erzielen.

Betrachten Sie den folgenden regulären Ausdruck:

(?<!filename)\.js$
Nach dem Login kopieren

Dieser reguläre Ausdruck stimmt mit „.js“ am Ende einer Zeichenfolge überein, mit Ausnahme von „Dateiname.js“. ." Ohne Lookbehind-Unterstützung in Javascript benötigen wir jedoch eine Alternative.

Eine solche Alternative besteht darin, die Lookbehind-Behauptung in eine Reihe expliziter Prüfungen für jedes Zeichen in der Zeichenfolge zu erweitern:

^(?:(?!filename\.js$).)*\.js$
Nach dem Login kopieren

Dieser reguläre Ausdruck gliedert sich wie folgt:

  • ^: Beginn von string
  • (?:...)*: Durchläuft den folgenden Ausdruck für jedes Zeichen
  • (?!filename.js$): Negativer Lookahead, um sicherzustellen, dass die nächsten Zeichen nicht übereinstimmen " Dateiname.js"
  • .: Passen Sie einen Punkt an
  • *: Wiederholen Sie den Punktabgleich nach Bedarf
  • .js: Übereinstimmung mit „.js“
  • $: Ende der Zeichenfolge

Alternativ ist eine einfachere Lösung verfügbar:

^(?!.*filename\.js$).*\.js$
Nach dem Login kopieren

Diese Regex überprüft im Wesentlichen die gesamte Zeichenfolge enthält nicht „filename.js“, bevor es mit „.js“ übereinstimmt.

Durch die Nutzung dieser Alternativen können wir Regex-Funktionalität implementieren Ähnlich wie Lookbehind-Behauptungen in Javascript.

Das obige ist der detaillierte Inhalt vonWie implementiert man Lookbehind-Assertionen in JavaScript Regex?. 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