Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. JavaScript-Referenz
  4. Eingebaute Standardobjekte
  5. RegExp
  6. test()

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.

View in EnglishAlways switch to English

RegExp.prototype.test()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since Juli 2015.

Dietest()-Methode vonRegExp-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 gibttrue zurück, wenn eine Übereinstimmung gefunden wird, andernfallsfalse.

JavaScript-RegExp-Objekte sindzustandsbehaftet, wenn sie die Flagsglobal odersticky gesetzt haben (z.B./foo/g oder/foo/y). Sie speichern einenlastIndex aus dem vorherigen Treffer. Intern verwendet kanntest() verwendet werden, um über mehrere Übereinstimmungen in einem Textstring zu iterieren (mit Erfassungsgruppen).

Probieren Sie es aus

const str = "table football";const regex = /fo+/;const globalRegex = /fo+/g;console.log(regex.test(str));// Expected output: trueconsole.log(globalRegex.lastIndex);// Expected output: 0console.log(globalRegex.test(str));// Expected output: trueconsole.log(globalRegex.lastIndex);// Expected output: 9console.log(globalRegex.test(str));// Expected output: false

Syntax

js
test(str)

Parameter

str

Der String, gegen den der reguläre Ausdruck abgeglichen werden soll. Alle Werte werdenin Strings umgewandelt, daher führt das Weglassen oder Übergeben vonundefined dazu, dasstest() nach dem String"undefined" sucht, was selten gewünscht ist.

Rückgabewert

true, wenn eine Übereinstimmung zwischen dem regulären Ausdruck und dem Stringstr besteht. Andernfallsfalse.

Beschreibung

Verwenden Sietest(), wann immer Sie wissen möchten, ob ein Muster in einem String gefunden wird.test() gibt einen booleschen Wert zurück, anders als dieString.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 dieexec()-Methode. (Dies ist ähnlich wie dieString.prototype.match()-Methode.)

Wie beiexec() (oder in Kombination damit) wirdtest(), mehrmals auf derselben globalen regulären Ausdrucksinstanz aufgerufen, über den vorherigen Treffer hinausgehen.

Beispiele

Verwendung von test()

Dieses Beispiel überprüft, ob"hello" ganz am Anfang eines Strings enthalten ist und gibt einen booleschen Wert zurück.

js
const str = "hello world!";const result = /^hello/.test(str);console.log(result); // true

Das folgende Beispiel protokolliert eine Nachricht, die von der erfolgreichen Durchführung des Tests abhängt:

js
function testInput(re, str) {  const midString = re.test(str) ? "contains" : "does not contain";  console.log(`${str} ${midString} ${re.source}`);}

Verwendung von test() bei einem Regex mit dem "global"-Flag

Wenn ein Regex dasglobal-Flag gesetzt hat, wirdtest() denlastIndex des Regex vorwärts verschieben. (RegExp.prototype.exec() verschiebt dielastIndex-Eigenschaft ebenfalls.)

Weitere Aufrufe vontest(str) werden die Suche instr ablastIndex fortsetzen. DielastIndex-Eigenschaft wird jedes Mal erhöht, wenntest()true zurückgibt.

Hinweis:Solangetest()true zurückgibt,wirdlastIndexnicht zurückgesetzt—even bei einem Test mit einem anderen String!

Wenntest()false zurückgibt, wird dielastIndex-Eigenschaft des aufrufenden Regex auf0 zurückgesetzt.

Das folgende Beispiel demonstriert dieses Verhalten:

js
const regex = /foo/g; // the "global" flag is set// regex.lastIndex is at 0regex.test("foo"); // true// regex.lastIndex is now at 3regex.test("foo"); // false// regex.lastIndex is at 0regex.test("barfoo"); // true// regex.lastIndex is at 6regex.test("foobar"); // false// regex.lastIndex is at 0regex.test("foobarfoo"); // true// regex.lastIndex is at 3regex.test("foobarfoo"); // true// regex.lastIndex is at 9regex.test("foobarfoo"); // false// regex.lastIndex is at 0// (...and so on)

Spezifikationen

Specification
ECMAScript® 2026 Language Specification
# sec-regexp.prototype.test

Browser-Kompatibilität

Siehe auch

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

[8]ページ先頭

©2009-2026 Movatter.jp