--- title: String.prototype.search() slug: Web/JavaScript/Reference/Global_Objects/String/search tags: - JavaScript - Méthode - Prototyp - Referenz - Regulärer Ausdruck - Zeichenkette translation_of: Web/JavaScript/Reference/Global_Objects/String/search original_slug: Web/JavaScript/Reference/Global_Objects/String/suchen ---
Die search()
methode führt eine Suche für eine Übereinstimmung von einem Regulären Ausdruck und diesem {{jsxref("String")}} Objekt.
str.search(regexp)
regexp
obj
eingereicht wird, wird es durch new RegExp(obj)
zu {{jsxref("RegExp")}} konvertiert.Die erste übereinstimmung zwischen dem Regulären Audruck und und der gegebenen Zeichenkette; wenn nicht gefunden, -1.
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 {{jsxref("RegExp.prototype.test()", "test()")}} Methode auf dem RegExp Prototyp, der einen boolean zurückgibt); für mehr informationen (aber langsamererere Ausführung) nutze {{jsxref("String.prototype.match()", "match()")}} (ähnlich zum Ausdruck {{jsxref("RegExp.prototype.exec()", "exec()")}}).
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
Spezifikation | Status | Kommentar |
---|---|---|
{{SpecName('ES3')}} | {{Spec2('ES3')}} | Initielle Definition. Eingeführt in JavaScript 1.2. |
{{SpecName('ES5.1', '#sec-15.5.4.12', 'String.prototype.search')}} | {{Spec2('ES5.1')}} | |
{{SpecName('ES6', '#sec-string.prototype.search', 'String.prototype.search')}} | {{Spec2('ES6')}} | |
{{SpecName('ESDraft', '#sec-string.prototype.search', 'String.prototype.search')}} | {{Spec2('ESDraft')}} |
{{Compat("javascript.builtins.String.search")}}
flags
war ein nicht-standard Zweitargument nur in Gecko verfügbar: str.search(regexp, flags)search()
war falsch eingeführt; wenn es ohne oder mit {{jsxref("undefined")}} 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.flag
Argument eine Konsolenwarnung ({{bug(1142351)}}).flag
Argument nicht länger unterstützt in nicht-veröffentlichten Builds und wird bald vollständig entfernt ({{bug(1245801)}}).flag
Argument nicht länger unterstützt ({{bug(1108382)}}).