JavaScript-Stringsuche
- Vorherige Seite JS-String-Methode
- Nächste Seite JS-String-Templates
Dies ist ein JavaScript-Methode zur Suche in einer Zeichenkette:
- String.indexOf()
- String.lastIndexOf()
- String.startsWith()
- String.endsWith()
String.indexOf()
indexOf()
Die Methode gibt die Position des angegebenen Textes in der Zeichenkette zurückErsteDer Index des (Orts) aufgetreten ist:
Example
let str = "Bitte locate, wo 'locate' vorkommt!"; str.indexOf("locate") // gibt 7 zurück
JavaScript zählt die Positionen ab null.
0 ist der erste Position in einer Zeichenkette, 1 ist die zweite, 2 ist die dritte ......
String.lastIndexOf()
lastIndexOf()
Die Methode gibt die letzte Erscheinung des angegebenen Textes in der Zeichenkette zurück:
Example
let str = "Bitte locate, wo 'locate' vorkommt!"; str.lastIndexOf("locate") // gibt 21 zurück
Wenn der Text nicht gefunden wird:indexOf()
und lastIndexOf()
beide geben -1 zurück:
Example
let str = "Bitte locate, wo 'locate' vorkommt!"; str.lastIndexOf("Bill") // gibt -1 zurück
Diese beiden Methoden akzeptieren den zweiten Parameter als Startposition der Suche:
Example
let str = "Bitte locate, wo 'locate' vorkommt!"; str.indexOf("locate", 15) // gibt 21 zurück
lastIndexOf()
Die Methode sucht nach hinten (von Ende bis Anfang), was bedeutet, dass: Wenn der zweite Parameter 15
Wenn der zweite Parameter angegeben ist, wird von Position 15 aus gesucht, bis zum Anfang der Zeichenkette.
Example
let str = "Bitte locate, wo 'locate' vorkommt!"; str.lastIndexOf("locate", 15) // gibt 7 zurück
String.search()
search()
Die Methode sucht im String nach einer angegebenen Zeichenkette und gibt die Position der Übereinstimmung zurück:
Example
let str = "Bitte locate, wo 'locate' vorkommt!"; str.search("locate") // gibt 7 zurück
Haben Sie bemerkt?
indexOf()
und search()
Sind diese beiden Methoden gleich?
Akzeptieren sie die gleichen Parameter und geben sie die gleichen Werte zurück?
Diese beiden Methoden sind nicht gleich. Unterschiede wie folgt:
search()
Die Methode akzeptiert keinen zweiten Startposition parameter.indexOf()
Die Methode kann keine starken Suchwerte (reguläre Ausdrücke) verwenden.
Sie werden im folgenden Kapitel mehr über reguläre Ausdrücke lernen.
String.match()
Die match()-Methode sucht nach Übereinstimmungen im String basierend auf dem regulären Ausdruck und gibt die Übereinstimmungen als Array-Objekt zurück.
Beispiel 1
Suchen Sie "ain" in der Zeichenkette:
let text = "Der Regen in SPANIEN bleibt hauptsächlich in der Ebene"; text.match(/ain/g) // gibt das Array [ain,ain,ain] zurück
Lernen Sie mehr über reguläre Ausdrücke im Kapitel JS RegExp.
Wenn der reguläre Ausdruck den Modifikator g nicht enthält (globale Suche ausführen), gibt die match()-Methode nur das erste Übereinstimmungsergebnis der Zeichenkette zurück.
语法
string.match(regexp)
regexp | Erforderlich. Der zu suchende Wert, ein reguläres Ausdruck. |
Return: | Array, das die Übereinstimmungen enthält, wobei jede Übereinstimmung einem Element entspricht. Wenn keine Übereinstimmung gefunden wird, ist es null. |
Beispiel 2
Führen Sie eine großschreibungsempfindliche globale Suche für "ain" durch:
let text = "Der Regen in SPANIEN bleibt hauptsächlich in der Ebene"; text.match(/ain/gi) // returns the array [ain, AIN, ain, ain]}
String.includes()
如果字符串包含指定值,includes()
The method returns true.
Example
let text = "Hello world, welcome to the universe."; text.includes("world") // returns true
Browser support
Internet Explorer does not support String.includes().
Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 41 | Edge 12 | Firefox 40 | Safari 9 | Opera 28 |
March 2015 | July 2015 | August 2015 | October 2015 | March 2015 |
语法
string.includes(searchvalue, start)
searchvalue | 必需。需要搜索的字符串。 |
start | 可选。默认为 0. 开始搜索的位置。 |
Return: | 如果字符串包含该值则返回 true ,否则返回 false . |
JS Version: | ES6 (2015) |
Check whether the string contains "world", starting from position 12:
let text = "Hello world, welcome to the universe."; text.includes("world", 12) // returns false
String.startsWith()
如果字符串以指定值开头,则 startsWith()
The method returns true
,否则返回 false
:
Example
let text = "Hello world, welcome to the universe."; text.startsWith("Hello") // returns true
语法
string.startsWith(searchvalue, start)
参数值
参数 | 描述 |
---|---|
searchvalue | 必需。 |
start | 可选。默认为 0。开始搜索的位置。 |
Example
let text = "Hello world, welcome to the universe."; text.startsWith("world") // returns false
let text = "Hello world, welcome to the universe."; text.startsWith("world", 5) // returns false
let text = "Hello world, welcome to the universe."; text.startsWith("world", 6) // returns true
Anmerkung:startsWith()
Die Methode unterscheidet zwischen Gross- und Kleinbuchstaben.
Internet Explorer unterstützt diese Methode nicht startsWith()
Methode.
The first fully supported browser version is:
Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 41 | Edge 12 | Firefox 17 | Safari 9 | Opera 28 |
March 2015 | July 2015 | August 2015 | October 2015 | March 2015 |
String.endsWith()
如果字符串以指定值结尾,则 endsWith()
The method returns true
,否则返回 false
:
Example
Check whether the string ends with "Gates":
var text = "Bill Gates"; text.endsWith("Gates") // returns true
语法
string.endsWith(searchvalue, length)
参数值
参数 | 描述 |
---|---|
searchvalue | 必需。 |
length | Optional. Die zu suchende Länge. |
Suchen Sie nach den ersten 11 Zeichen einer Zeichenkette, die mit "world" endet:
let text = "Hello world, welcome to the universe."; text.endsWith("world", 11) // gibt true zurück
Anmerkung:endsWith()
Die Methode unterscheidet zwischen Gross- und Kleinbuchstaben.
Internet Explorer unterstützt diese Methode nicht endsWith()
Methode.
Die erste Browser-Version, die diese Methode vollständig unterstützt, ist:
Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 51 | Edge 15 | Firefox 54 | Safari 10 | Opera 38 |
Mai 2016 | April 2017 | Juni 2017 | September 2016 | Juni 2016 |
Vollständige String-Referenzhandbuch
Für eine vollständige Referenz besuchen Sie bitte unsere JavaScript String-Referenzhandbuch.
Dieses Handbuch enthält alle Beschreibungen und Beispiele der String-Attribute und -Methoden.
- Vorherige Seite JS-String-Methode
- Nächste Seite JS-String-Templates