Kernpunkte
test()
-Methode ist ein praktisches Tool, um zu überprüfen, ob eine Zeichenfolge mit einem regulären Ausdruck übereinstimmt. Diese Methode akzeptiert eine Zeichenfolge als Argument und gibt einen booleschen Wert zurück, der angibt, ob die Zeichenfolge mit dem regulären Ausdruck übereinstimmt. indexOf()
. match
, search
und exec
. Diese Methoden werden verwendet, um einen Teil einer Zeichenfolge abzurufen, die einem regulären Ausdruck entspricht, nach regulären Ausdrucksmustern in einer Zeichenfolge und Suchergebnissen sucht. Dieses kurze Tutorial erklärt, wie die test()
-Methode verwendet wird, um zu testen, ob eine Zeichenfolge mit einem regulären Ausdruck übereinstimmt.
Bestände sind Textfragmente, die verschiedene Daten enthalten können, z. B. URLs, Telefonnummern, Namen, Zahlen usw. In vielen Fällen müssen Sie überprüfen, ob die Zeichenfolge einen Text oder eine Art Zeichenstation enthält.
Wenn Sie testen, ob eine Zeichenfolge ein bestimmtes Substring enthält, können Sie Methoden wie indexOf()
verwenden. Bei flexibleren Tests und Bedingungen ist die Verwendung regelmäßiger Ausdrücke jedoch eine bessere Wahl.
JavaScript Die reguläre Ausdrucksübereinstimmung ermöglicht es Ihnen, zu überprüfen, ob eine Zeichenfolge ein bestimmtes Muster, Substring oder Zeichen enthält. Regelmäßige Ausdrücke sind nützlich, um Informationen in Zeichenfolgen zu erkennen, die in verschiedenen Formaten wie Daten geschrieben werden können.
Um zu testen, ob eine Zeichenfolge mit einem regulären Ausdruck übereinstimmt, müssen Sie zunächst eine reguläre Ausdrucksinstanz erstellen. Sie können dann die im reguläre Ausdruck verfügbare test()
-Methode verwenden, um zu überprüfen, ob die Zeichenfolge mit dem regulären Ausdruck übereinstimmt.
test()
Methode akzeptiert einen Parameter: die Zeichenfolge, die gegen das Muster getestet wird. Es gibt einen booleschen Wert zurück, der angibt, ob die Zeichenfolge mit dem regulären Ausdruck übereinstimmt.
Beispiel:
const pattern = /test.*regular/; const str = 'I want to test this string against a regular expression'; if (pattern.test(str)) { console.log('Matched'); } else { console.log('Not Matched'); }
In diesem Beispiel erstellen Sie das Muster test.*regular
. Dieses Muster bedeutet, dass die Zeichenfolge in dieser Reihenfolge die Wörter "Test" und "regelmäßig" enthalten muss und die Wörter durch Null oder mehr von allen Zeichen getrennt werden können.
Wenn test()
true
zurückgibt, wird in der Konsole "Matched" aufgezeichnet. Ansonsten in der Konsole "nicht übereinstimmen".
Da str
die Wörter "Test" und "regulär" enthält, und "Test" vor "regulär" in der Zeichenfolge ist, stimmt es mit dem Muster überein und test()
wird true
zurückgegeben.
Sie können das Muster auch mit RegExp
Konstruktor deklarieren:
const pattern = new RegExp('test.*regular'); const str = 'I want to test this string against a regular expression'; if (pattern.test(str)) { console.log('Matched'); } else { console.log('Not Matched'); }
Sie können es in der CODEPEN -Demo unten testen.
Dieser Abschnitt zeigt einige Beispiele zur Verwendung von JavaScript -regulären Expressionsübereinstimmungen, um gemeinsame Anwendungsfälle zu testen. Es ist zu beachten, dass die hier verwendeten regulären Ausdrücke in jedem Fall möglicherweise nicht die perfekte Lösung sind. Sie werden jeweils verwendet, um ein einfaches Beispiel dafür zu geben, wie der Prozess funktioniert.
Sie können reguläre Ausdrücke verwenden, um zu testen, ob eine String eine URL ist. Sie können mit der folgenden Codepen -Demonstration experimentieren.
Beachten Sie, dass das oben verwendete reguläre Expressionsmuster erwartet, dass die URL mit http://
oder https://
beginnt.
Sie können reguläre Ausdrücke verwenden, um zu testen, ob eine Zeichenfolge eine gültige E -Mail -Adresse ist. Die folgende CodePen -Demonstration zeigt, wie es geht.
Sie können reguläre Ausdrücke verwenden, um zu testen, ob eine Zeichenfolge ein Datum ist. Die folgende CodePen -Demonstration zeigt, wie es geht.
Beachten Sie, dass das Format des oben verwendeten regulären Expressionsmusters "dd-mm-yyyy" oder "dd/mm/jyjus" ist.
Es gibt andere Möglichkeiten, zu testen, ob eine Zeichenfolge mit einem regulären Ausdruck übereinstimmt. Dieser Artikel wird es nicht vollständig einführen, aber das Folgende ist ein kurzer Überblick:
match
. Diese Methode ist auf Saiten erhältlich. Es akzeptiert einen regulären Ausdruck als Argument und ruft den Teil der Zeichenfolge ab, der dem regulären Ausdruck entspricht (falls vorhanden). search
. Diese Methode ist auf Saiten erhältlich. Es akzeptiert regelmäßige Ausdrücke als Argumente, um zu suchen, ob das reguläre Ausdrucksmuster in der Zeichenfolge vorhanden ist und wenn ja, nach dem Index zu suchen, in dem das Muster zuerst in der Zeichenfolge erscheint. exec
. Diese Methode ist bei regulären Ausdrücken verfügbar. Es nimmt eine Zeichenfolge als Argument an, sucht die Zeichenfolge nach regulären Ausdrucksmustern und ruft das Ergebnis ab (falls vorhanden). reguläre Ausdrücke sind nützlich, um zu testen, ob eine Zeichenfolge ein bestimmtes Muster oder Substring enthält. Wenn Sie mit dem regulären Ausdruckspass von JavaScript prüfen, können Sie überprüfen, ob die Zeichenfolge eine URL, ein Datum, eine IP -Adresse oder ein anderes Typ und ein anderes Format ist.
Die für reguläre Ausdrücke verfügbare indexOf()
-Methode bietet eine größere Flexibilität beim Testen, ob eine Zeichenfolge Muster entspricht als andere Methoden wie test()
.
verwandte Lesungen:
match()
Die null
-Methode in JavaScript ist ein leistungsstarkes Tool zum Abrufen von Übereinstimmungen, wenn die Zeichenfolgen an reguläre Ausdrücke angepasst werden. Es wird eine Reihe von Ergebnissen zurückgegeben, einschließlich der gesamten passenden Zeichenfolge und der von Klammern erfassten Substring -Übereinstimmungen. Wenn keine Übereinstimmung gefunden wird, geben Sie
indexOf()
Im Gegensatz zu anderen String -Methoden wie includes()
oder match()
ermöglicht die
let str = "This is a test. Test is important.";
Nehmen wir natürlich an, Sie haben eine Zeichenfolge und möchten alle Vorkommen des Wortes "Test" finden. Hier erfahren Sie, wie es geht:
let result = str.match(/test/gi);
console.log(result); // ["test", "Test"]
/test/gi
In diesem Beispiel wird der reguläre Ausdruck
RegExp
reguläre Ausdrücke, auch als Regex oder Regexp bezeichnet, sind Muster, die zur Übereinstimmung von Zeichenkombinationen in Saiten verwendet werden. In JavaScript sind reguläre Ausdrücke Objekte, die auf zwei Arten definiert werden können: Literale oder den
match()
Sie können reguläre Ausdrücke direkt als Parameter zur d
-Methode verwenden. Wenn Sie beispielsweise alle Zahlen in einer Zeichenfolge finden möchten, können Sie die Sonderzeichen let str = "The year is 2022.";
verwenden, um Zahlen in einem regulären Ausdruck darzustellen:
let result = str.match(/d /g);
console.log(result); // ["2022"]
d
In diesem Beispiel entspricht
Bei Verwendung der Methode match()
, wenn keine Übereinstimmung gefunden wird, gibt es null
zurück. Dies ist nützlich für die Bedingungsprüfung. Sie können beispielsweise überprüfen, ob das Ergebnis null
ist, bevor Sie andere Vorgänge in Ihrem Code fortsetzen.
Obwohl die Methode match()
hauptsächlich für die Suche verwendet wird, bietet JavaScript die replace()
-Methode, die mit regulären Ausdrücken verwendet werden kann, wenn Sie einen Teil der Zeichenfolge basierend auf dem Muster ersetzen möchten. Sie können jedoch die match()
-Methode verwenden, um den Teil der Zeichenfolge zu finden, der ersetzt werden muss.
Sie können Gruppen erfassen, indem Sie Klammern in regulären Ausdrücken verwenden. Die Methode match()
gibt diese Gruppen als separate Elemente im Ergebnisarray zurück. Zum Beispiel:
let str = "The year is 2022.";
let result = str.match(/(d )/g);
console.log(result); // ["2022"]
In diesem Beispiel ist (d )
eine Gruppe, die mit einer oder mehreren Zahlen übereinstimmt.
Ja, reguläre Ausdrücke unterstützen eine Reihe von Sonderzeichen, mit denen Sie komplexe Suchmuster erstellen können. Zum Beispiel bedeutet d
eine beliebige Zahl, w
einen alphanumerischen Zeichen und .
jeden Zeichen außer Zeilenunterbrechungen.
Obwohl die Methode match()
leistungsstark ist, hat sie einige Einschränkungen. Es kann nur mit Zeichenfolgen verwendet werden, nicht mit anderen Datentypen. Darüber hinaus kann es nur ein Ergebnisarray oder null
zurückgeben, nicht einen booleschen Wert. Wenn Sie boolesche Ergebnisse benötigen, müssen Sie möglicherweise stattdessen die RegExp
-Methode des test()
-Objekts verwenden.
Das obige ist der detaillierte Inhalt vonSchneller Tipp: Testen, wenn eine Zeichenfolge mit einem Regex in JavaScript übereinstimmt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!