Detaillierte Erklärung der praktischen Anwendung regulärer Ausdrücke in JavaScript

Detaillierte Erklärung der praktischen Anwendung regulärer Ausdrücke in JavaScript

In der tatsächlichen Arbeit werden reguläre Ausdrücke in JavaScript immer noch häufig verwendet. Daher ist dieses Wissen sehr wichtig.

1. Grundlegende Grammatik:

Erstens: Wörtliche Syntax

var Ausdruck=/Muster/Flags;

Zweitens: RegExp-Konstruktorsyntax

var pattern = /\w/gi; //Literalsyntax var pattern = new RegExp('\\w', 'gi'); //Konstruktorsyntax, diese beiden sind gleichwertig

Hierbei ist zu beachten, dass bei dynamischen regulären Ausdrücken nur die zweite Option ausgewählt werden kann.

Die Flaggen haben 3 Flaggen

g: gibt ein globales Muster an, d. h. das Muster wird auf alle Zeichenfolgen angewendet, anstatt sofort anzuhalten, wenn die erste Übereinstimmung gefunden wird;

i: gibt einen Modus an, bei dem die Groß-/Kleinschreibung nicht beachtet wird, d. h. die Groß-/Kleinschreibung des Musters und der Zeichenfolge wird bei der Ermittlung der Übereinstimmung ignoriert;

m: Gibt den Mehrzeilenmodus an, d. h. wenn das Ende einer Textzeile erreicht ist, wird die Suche fortgesetzt, um zu prüfen, ob in der nächsten Zeile ein Element vorhanden ist, das dem Muster entspricht.

Natürlich gibt es noch weitere Flaggen, diese werden jedoch selten verwendet und werden hier nicht näher erläutert.

Was das obige \w bedeutet, erfahren Sie kurz, lesen Sie dann bitte weiter.

2. Methoden

Die wichtigsten sind test(), search(), match() und replace(). Natürlich gibt es noch viele weitere Methoden, auf die ich hier aber nicht näher eingehen werde, da sie selten verwendet werden.

1. Verwendung der test()-Methode

Ermitteln, ob eine Zeichenfolge eine entsprechende Zeichenfolge enthält

2. Verwendung der search()-Methode

Sucht nach dem Index des ersten Vorkommens der Zeichenfolge und gibt -1 zurück, wenn es nicht gefunden wird.

3. Verwendung der match()-Methode

Gibt ein Array von Übereinstimmungen zurück

4. Die Verwendung der replace()-Methode ist immer noch sehr verbreitet

Stimmt mit einer Zeichenfolge überein und ersetzt sie durch eine andere Zeichenfolge

3. Ausdrücke und tatsächlicher Kampf abgleichen

1. Behauptungen:

Eine Behauptung gibt an, dass unter bestimmten Bedingungen eine Übereinstimmung auftritt. Kurz gesagt, das Konzept ist etwas verwirrend, also lesen Sie einfach weiter. Lassen Sie mich langsam weitermachen.

Charakter beschreiben
^ Entspricht dem Anfang
$ Stimmt mit dem Ende überein
\B Passende Wortgrenzen
\B Stimmt mit Nicht-Wortgrenzen überein

Zum Beispiel

Ich möchte eine Übereinstimmung mit einer Zeichenfolge finden, die mit „Dog“ beginnt und mit „Dog“ endet, wobei die Groß-/Kleinschreibung ignoriert wird.

var pattern = /^dog$/i; //Groß- und Kleinschreibung ignorieren console.log(pattern.test('dog')); //true
Konsole.log(Muster.Test('sdfdog'));//falsch
Konsole.log(Muster.Test('dog56'));//falsch
Konsole.log(Muster.Test('dOG'));//wahr
var pattern = /\b\w+/g; //Globale Übereinstimmung, das + ist hier ein Quantifizierer, der 1 oder mehr Mal darstellt console.log('Hallo Welt'.match(pattern)); //Ausgabe ['Hallo','Welt'], dies ist die Verwendung von match, es wird ein Array von Übereinstimmungen zurückgegeben.

Hier entspricht \b der Grenze eines Wortes und \B der Grenze eines Nicht-Worts. Einer ist klein und einer groß, bei den Großbuchstaben ist es umgekehrt. Mehr brauche ich dann nicht zu sagen.

Reden wir über Wortgrenzen. Vielleicht sind sich viele Leute über Wortgrenzen nicht ganz im Klaren.

Lassen Sie es mich kurz erklären. Beispielsweise hat das Wort „Hello World“ vier Grenzen, nämlich die Position H, die Position O, die Position W und die Position d.

2. Charakterklasse:

Metazeichen beschreiben
. Findet ein einzelnes Zeichen, außer Newline und Zeilenabschluss
\w Finde Wortzeichen, die [A-Za-z0-9_] entsprechen.
\W Findet Nicht-Wortzeichen, äquivalent zu [^A-Za-z0-9_]
Die unten aufgeführten Antonyme werden nicht mehr aufgeführt.
\D Suche nach einer Zahl, die [0-9] entspricht
\S Suchen nach Leerzeichen
\0 Suchen nach NULL-Zeichen
\N Zeilenumbrüche suchen
\F Suchen von Seitenumbrüchen
\R Suchen nach Wagenrücklauf
\T Tabulatorzeichen suchen
\v Suchen nach vertikalen Tabulatorzeichen

3. Geltungsbereich:

Charakter beschreiben
[ABC] Passt zu jedem Zeichen in a, b, c
[^abc] Stimmt mit jedem Zeichen überein, das nicht a, b oder c ist.
[0-9] Stimmt mit jeder Zahl im Bereich 0 bis 9 überein. Ebenso stimmt [az] mit jedem Zeichen im Bereich az überein.
[az] Stimmt mit jedem Zeichen zwischen a und z überein
x|y Entspricht x oder y

4. Quantifizierer:

Charakter beschreiben
n+ Stimmt mit jeder Zeichenfolge überein, die mindestens ein Zeichen enthält n
N* Stimmt mit jeder Zeichenfolge überein, die null oder mehr n enthält.
N? Stimmt mit jeder Zeichenfolge überein, die null oder eins enthält n
n{x} Entspricht einer Zeichenfolge, die x n enthält
n{x,y} Entspricht einer Zeichenfolge mit mindestens x und höchstens y n Zeichen

4. Erweiterung

Entspricht einer Zahl zwischen 10 und 36

var Muster = /1[2-9]|[2-3][0-9]|4[0-6]/;//12-46

Konsole.log(Muster.Test(11));//falsch
konsole.log(muster.test(12));//wahr
konsole.log(muster.test(20));//wahr
konsole.log(muster.test(36));//wahr
konsole.log(muster.test(46));//wahr
Konsole.log(Muster.Test(47));//falsch

Ersetzen Sie „Hallo“ in „Hallo Welt! Hallo“ durch „Willkommen“

Hier legen wir vor allem Wert auf die Verwendung der Replace-Methode in regulären Ausdrücken, da diese in der Praxis sehr häufig zum Einsatz kommt. Es macht einen großen Unterschied, ob man den Flags das g hinzufügt oder nicht.

var Muster = /Hallo/g;

var oldString = 'Hallo, Welt! Hallo';
var newString = oldString.replace(pattern, 'Willkommen');
console.log(newString);//Willkommen,Welt!Willkommen

Zusammenfassen

Dies ist das Ende dieses Artikels über die praktische Anwendung von regulären Ausdrücken in JavaScript. Weitere relevante reguläre Ausdrücke in JavaScript finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Eine kurze Diskussion über die Anwendung gängiger regulärer Ausdrücke in Javascript
  • Das Konzept und die Anwendung regulärer Ausdrücke in JavaScript
  • Anwendung des mehrzeiligen Attributs des regulären JavaScript-Ausdrucks
  • Beispiel für die Konvertierung regulärer Ausdrücke in einer JS-Anwendung
  • js ersetzen regulären Ausdruck Anwendungsfall Erklärung
  • Detaillierte Erklärung zur Anwendung regulärer Ausdrücke in Javascript

<<:  Detaillierte Erklärung, wie Sie die Fallstricke beim Ersetzen von logischem SQL in MySQL vermeiden können

>>:  Linux-Debugging-Tools, die sich Entwickler und Betreiber unbedingt ansehen sollten [Empfohlen]

Artikel empfehlen

WeChat Mini-Programm Lotterienummerngenerator

In diesem Artikel wird der spezifische Code des W...

HTML Tutorial: Sammlung häufig verwendeter HTML-Tags (4)

Verwandte Artikel: Anfänger lernen einige HTML-Ta...

So verwenden Sie die HTML 5 Drag & Drop-API in Vue

Die Drag & Drop-API fügt ziehbare Elemente zu...

Implementierung des Wasserfall-Layouts im Uni-App-Projekt

GitHub-Adresse, Sie können es mit einem Stern mar...

So laden Sie das JAR-Paket über die Webseite auf Nexus hoch

Wie lädt man das JAR-Paket in ein privates Lager ...

Beispielcode zur Verwendung der Elementkalenderkomponente in Vue

Schauen Sie sich zunächst das Wirkungsdiagramm an...

Auf den Alibaba Cloud Server Tomcat kann nicht zugegriffen werden

Inhaltsverzeichnis 1. Einleitung 2. Lösung 2.1 Ko...

Mehrere Techniken zum Abspielen von Sounds mit CSS

CSS ist der Bereich von Stil, Layout und Präsenta...

Vue implementiert die Produktregisterkarte der Produktdetailseitenfunktion

In diesem Artikelbeispiel wird der spezifische Co...

Mehrere Szenarien für die Verwendung des Nginx Rewrite-Moduls

Anwendungsszenario 1: Domänennamenbasierte Umleit...

Beispiel für die Implementierung einer Komponente mit fester Unterseite in Vue

Inhaltsverzeichnis 【Wirkung】 【Implementierungsmet...

3 einfache Möglichkeiten, Karusselleffekte mit JS zu erzielen

In diesem Artikel werden 3 Methoden beschrieben, ...

Vue3 verwendet Axios Interceptor zum Drucken von Front-End-Protokollen

Inhaltsverzeichnis 1. Einleitung 2. Verwenden Sie...