Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
Die test()-Methode von RegExp-Instanzen führt eine Suche mit diesem regulären Ausdruck durch, um nach einer Übereinstimmung zwischen einem regulären Ausdruck und einem angegebenen String zu suchen. Sie gibt true zurück, wenn eine Übereinstimmung gefunden wird, andernfalls false.
JavaScript-RegExp-Objekte sind zustandsbehaftet, wenn sie die Flags global oder sticky gesetzt haben (z.B. /foo/g oder /foo/y). Sie speichern einen lastIndex aus dem vorherigen Treffer. Intern verwendet kann test() verwendet werden, um über mehrere Übereinstimmungen in einem Textstring zu iterieren (mit Erfassungsgruppen).
Der String, gegen den der reguläre Ausdruck abgeglichen werden soll. Alle Werte werden in Strings umgewandelt, daher führt das Weglassen oder Übergeben von undefined dazu, dass test() nach dem String "undefined" sucht, was selten gewünscht ist.
true, wenn eine Übereinstimmung zwischen dem regulären Ausdruck und dem String str besteht. Andernfalls false.
Verwenden Sie test(), wann immer Sie wissen möchten, ob ein Muster in einem String gefunden wird. test() gibt einen booleschen Wert zurück, anders als die String.prototype.search()-Methode (die den Index einer Übereinstimmung oder -1 zurückgibt, wenn keine gefunden wird).
Um mehr Informationen zu erhalten (aber mit langsamerer Ausführung), verwenden Sie die exec()-Methode. (Dies ist ähnlich wie die String.prototype.match()-Methode.)
Wie bei exec() (oder in Kombination damit) wird test(), mehrmals auf derselben globalen regulären Ausdrucksinstanz aufgerufen, über den vorherigen Treffer hinausgehen.
Dieses Beispiel überprüft, ob "hello" ganz am Anfang eines Strings enthalten ist und gibt einen booleschen Wert zurück.
Das folgende Beispiel protokolliert eine Nachricht, die von der erfolgreichen Durchführung des Tests abhängt:
Wenn ein Regex das global-Flag gesetzt hat, wird test() den lastIndex des Regex vorwärts verschieben. (RegExp.prototype.exec() verschiebt die lastIndex-Eigenschaft ebenfalls.)
Weitere Aufrufe von test(str) werden die Suche in str ab lastIndex fortsetzen. Die lastIndex-Eigenschaft wird jedes Mal erhöht, wenn test() true zurückgibt.
Hinweis: Solange test() true zurückgibt, wird lastIndex nicht zurückgesetzt—even bei einem Test mit einem anderen String!
Wenn test() false zurückgibt, wird die lastIndex-Eigenschaft des aufrufenden Regex auf 0 zurückgesetzt.
Das folgende Beispiel demonstriert dieses Verhalten:
| ECMAScript® 2027 Language Specification # sec-regexp.prototype.test |
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
Der Bauplan für ein besseres Internet.
Besuche die gemeinnützige Muttergesellschaft der Mozilla Corporation, die Mozilla Foundation.
Teile dieses Inhalts sind ©1998–2026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfügbar unter einer Creative-Commons-Lizenz.