String.prototype.search()
Try it
Die search()
methode führt eine Suche für eine Übereinstimmung von einem Regulären Ausdruck und diesem String
Objekt.
Syntax
str.search(regexp)
Parameter
regexp
- Ein Regulär-Ausdruck Objekt. Wenn ein nicht-RegExp Objekt
obj
eingereicht wird, wird es durchnew RegExp(obj)
zuRegExp
konvertiert.
Rückgabewert
Die erste übereinstimmung zwischen dem Regulären Audruck und und der gegebenen Zeichenkette; wenn nicht gefunden, -1.
Beschreibung
Wenn du wissen willst ob ein Muster gefunden wurde, und was sein Index ist nutze search()
(wenn du nur wissen willst ob es das gibt nutze die ähnliche test()
Methode auf dem RegExp Prototyp, der einen boolean zurückgibt); für mehr informationen (aber langsamererere Ausführung) nutze match()
(ähnlich zum Ausdruck exec()
(en-US)).
Beispiele
Benutzung von search()
Das folgende Beispiel durchsucht eine Zeichenkette mit 2 verschiedenen regex Objekten, um eine erfolgreiche, und unerfolgreiche Suche zu zeigen.
var str = "hey LukE";
var re = /[A-Z]/g;
var re2 = /[.]/g;
console.log(str.search(re)); // gibt 4 zurück, was der Index des ersten Großbuchstaben "L" ist.
console.log(str.search(re2)); // gibt -1 zurück kann "." nicht finden
Spezifikationen
Spezifikation | Status | Kommentar |
---|---|---|
ECMAScript 3rd Edition (ECMA-262) | Standard | Initielle Definition. Eingeführt in JavaScript 1.2. |
ECMAScript 5.1 (ECMA-262) Die Definition von 'String.prototype.search' in dieser Spezifikation. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) Die Definition von 'String.prototype.search' in dieser Spezifikation. |
Standard | |
ECMAScript (ECMA-262) Die Definition von 'String.prototype.search' in dieser Spezifikation. |
Lebender Standard |
Browser Kompatibilität
BCD tables only load in the browser
Gecko-spezifische Hinweise
flags
war ein nicht-standard Zweitargument nur in Gecko verfügbar: str.search(regexp, flags)- Vorher Gecko 8.0,
search()
war falsch eingeführt; wenn es ohne oder mitundefined
parametern Ausgeführt wurde, würde es mit 'undefined' übereinstimmen, anstatt mit einer leeren Zeichenkette übereinzustimmen. Das wurde behoben; jetzt ist'a'.search()
und'a'.search(undefined)
korrekt und geben 0 zurück. - Ab Gecko 39 (Firefox 39 / Thunderbird 39 / SeaMonkey 2.36), gibt das nicht-Standard
flag
Argument eine Konsolenwarnung (Bug 1142351). - Ab Gecko 47 (Firefox 47 / Thunderbird 47 / SeaMonkey 2.44), ist das nicht-Standard
flag
Argument nicht länger unterstützt in nicht-veröffentlichten Builds und wird bald vollständig entfernt (Bug 1245801). - Ab Gecko 49 (Firefox 49 / Thunderbird 49 / SeaMonkey 2.46), ist das nicht-Standard
flag
Argument nicht länger unterstützt (Bug 1108382).