Zoeken in JavaScript-tekenreeks
JavaScript-zoekmethoden
- String indexOf()
- Tekenreeks lastIndexOf()
- Tekenreeks begint met()
- String eindigt met()
JavaScript-tekenreeks indexOf()
De indexOf()
methode retourneert de index van (de positie van) het first
voorkomen van een gespecificeerde tekst in een string:
Voorbeeld
let str = "Please locate where 'locate' occurs!";
str.indexOf("locate");
Opmerking
JavaScript telt posities vanaf nul.
0 is de eerste positie in een string, 1 is de tweede, 2 is de derde, ...
JavaScript-tekenreeks lastIndexOf()
De lastIndexOf()
methode retourneert de index van het laatste
voorkomen van een opgegeven tekst in een tekenreeks:
Voorbeeld
let str = "Please locate where 'locate' occurs!";
str.lastIndexOf("locate");
Beide indexOf()
, en lastIndexOf()
retourneer -1 als de tekst niet wordt gevonden:
Voorbeeld
let str = "Please locate where 'locate' occurs!";
str.lastIndexOf("John");
Beide methoden accepteren een tweede parameter als startpositie voor het zoeken:
Voorbeeld
let str = "Please locate where 'locate' occurs!";
str.indexOf("locate", 15);
De lastIndexOf()
methode zoekt achteruit (van het einde naar het begin), wat betekent: als de tweede parameter is 15
, begint de zoekopdracht op positie 15 en zoekt naar het begin van de string.
Voorbeeld
let str = "Please locate where 'locate' occurs!";
str.lastIndexOf("locate", 15);
JavaScript-tekenreeks zoeken()
De search()
methode zoekt in een tekenreeks naar een opgegeven waarde en retourneert de positie van de overeenkomst:
Voorbeeld
let str = "Please locate where 'locate' occurs!";
str.search("locate");
Is het je opgevallen?
De twee methoden, indexOf()
en search()
, zijn gelijk?
Ze accepteren dezelfde argumenten (parameters) en retourneren dezelfde waarde?
De twee methoden zijn NIET gelijk. Dit zijn de verschillen:
- De
search()
methode kan geen tweede startpositieargument aannemen. - De
indexOf()
methode kan geen krachtige zoekwaarden (reguliere expressies) aannemen.
In een later hoofdstuk leert u meer over reguliere expressies.
JavaScript-tekenreeks match()
De methode match() zoekt in een tekenreeks naar een overeenkomst met een reguliere expressie en retourneert de overeenkomsten als een Array-object.
voorbeeld 1
Zoek een string voor "ain":
let text = "The rain in SPAIN stays mainly in the plain";
text.match(/ain/g);
Lees meer over reguliere expressies in het hoofdstuk JS RegExp .
Opmerking
Als een reguliere expressie de g - modifier niet bevat (om een globale zoekopdracht uit te voeren), retourneert de match()-methode alleen de eerste overeenkomst in de tekenreeks.
Syntaxis
string.match(regexp)
regexp | Required. The value to search for, as a regular expression. |
Returns: | An Array, containing the matches, one item for each match, or null if no match is found |
Voorbeeld 2
Voer een globale, hoofdletterongevoelige zoekopdracht uit naar "ain":
let text = "The rain in SPAIN stays mainly in the plain";
text.match(/ain/gi);
JavaScript-tekenreeks bevat()
De includes()
methode retourneert true als een tekenreeks een opgegeven waarde bevat.
Voorbeeld
let text = "Hello world, welcome to the universe.";
text.includes("world");
Syntaxis
string.includes(searchvalue, start)
searchvalue | Required. The string to search for |
start | Optional. Default 0. Position to start the search |
Returns: | Returns true if the string contains the value, otherwise false |
JS Version: | ES6 (2015) |
Controleer of een tekenreeks "wereld" bevat, beginnend met zoeken op positie 12:
let text = "Hello world, welcome to the universe.";
text.includes("world", 12);
Browserondersteuning
includes()
is een ES6-functie (JavaScript 2015).
Het wordt ondersteund in alle moderne browsers:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
includes()
wordt niet ondersteund in Internet Explorer.
JavaScript-tekenreeks begint met()
De startsWith()
methode retourneert true
als een tekenreeks begint met een opgegeven waarde, anders false
:
Voorbeeld
let text = "Hello world, welcome to the universe.";
text.startsWith("Hello");
Syntaxis
string.startsWith(searchvalue, start)
Parameterwaarden
Parameter | Description |
---|---|
searchvalue | Required. The value to search for. |
start | Optional. Default 0. The position to start the search. |
Voorbeelden
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
Opmerking
De startsWith()
methode is hoofdlettergevoelig.
Browserondersteuning
startsWith()
is een ES6-functie (JavaScript 2015).
Het wordt ondersteund in alle moderne browsers:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
startsWith()
wordt niet ondersteund in Internet Explorer.
JavaScript-tekenreeks eindigt met()
De endsWith()
methode retourneert true
als een tekenreeks eindigt met een opgegeven waarde, anders false
:
Voorbeeld
Controleer of een string eindigt op "Doe":
var text = "John Doe";
text.endsWith("Doe");
Syntaxis
string.endswith(searchvalue, length)
Parameterwaarden
Parameter | Description |
---|---|
searchvalue | Required. The value to search for. |
length | Optional. The length to search. |
Controleer de 11 eerste tekens van een string die eindigt op "world":
let text = "Hello world, welcome to the universe.";
text.endsWith("world", 11);
Opmerking
De endsWith()
methode is hoofdlettergevoelig.
Browserondersteuning
endsWith()
is een ES6-functie (JavaScript 2015).
Het wordt ondersteund in alle moderne browsers:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
endsWith()
wordt niet ondersteund in Internet Explorer.
Volledige tekenreeksreferentie
Ga voor een volledige String-referentie naar onze:
Volledige JavaScript-stringreferentie .
De referentie bevat beschrijvingen en voorbeelden van alle tekenreekseigenschappen en -methoden.