Recherche de chaînes en JavaScript


JavaScript String indexOf()

La méthode indexOf() renvoie l' index (position) de la première occurrence d'une chaîne dans une autre chaîne, ou elle renvoie -1 si la chaîne n'est pas trouvée :

Exemple

let text = "Veuillez localiser où 'locate' se produit !";
let index = text.indexOf("locate");
Essayez-le vous-même »

Remarque

JavaScript compte les positions à partir de zéro.

0 est la première position dans une chaîne, 1 est la deuxième, 2 est la troisième, ...


JavaScript String lastIndexOf()

La méthode lastIndexOf() renvoie l' index de la dernière occurrence d'un texte spécifié dans une chaîne :

Exemple

let text = "Veuillez localiser où 'locate' se produit !";
let index = text.lastIndexOf("locate");
Essayez-le vous-même »

Les méthodes indexOf() et lastIndexOf() renvoient -1 si le texte n'est pas trouvé :

Exemple

let text = "Veuillez localiser où 'locate' se produit !";
let index = text.lastIndexOf("John");
Essayez-le vous-même »

Les deux méthodes acceptent un deuxième paramètre comme position de départ pour la recherche :

Exemple

let text = "Veuillez localiser où 'locate' se produit !";
let index = text.indexOf("locate", 15);
Essayez-le vous-même »

La méthode lastIndexOf() recherche en arrière (de la fin au début), ce qui signifie : si le deuxième paramètre est 15 , la recherche commence à la position 15 et recherche jusqu'au début de la chaîne.

Exemple

let text = "Veuillez localiser où 'locate' se produit !";
text.lastIndexOf("locate", 15);
Essayez-le vous-même »

JavaScript String search()

La méthode search() recherche une chaîne dans une autre chaîne (ou une expression régulière) et renvoie la position de la correspondance :

Exemples

let text = "Veuillez localiser où 'locate' se produit !";
text.search("locate");
Essayez-le vous-même »
let text = "Veuillez localiser où 'locate' se produit !";
text.search(/locate/);
Essayez-le vous-même »

Avez-vous remarqué ?

Les deux méthodes, indexOf() et search() , sont égales ?

Elles acceptent les mêmes arguments (paramètres) et renvoient la même valeur ?

Les deux méthodes ne sont PAS égales. Voici les différences :

  • La méthode search() ne peut pas prendre un deuxième argument de position de départ.
  • La méthode indexOf() ne peut pas prendre de valeurs de recherche puissantes (expressions régulières).

Vous en apprendrez plus sur les expressions régulières dans un chapitre ultérieur.



JavaScript String match()

La méthode match() renvoie un tableau contenant les résultats de la correspondance d'une chaîne avec une autre chaîne (ou une expression régulière).

Exemples

Effectuez une recherche pour "ain" :

let text = "La pluie en ESPAGNE reste principalement dans la plaine";
text.match("ain");
Essayez-le vous-même »

Effectuez une recherche pour "ain" :

let text = "La pluie en ESPAGNE reste principalement dans la plaine";
text.match(/ain/);
Essayez-le vous-même »

Effectuez une recherche globale pour "ain" :

let text = "La pluie en ESPAGNE reste principalement dans la plaine";
text.match(/ain/g);
Essayez-le vous-même »

Effectuez une recherche globale, insensible à la casse pour "ain" :

let text = "La pluie en ESPAGNE reste principalement dans la plaine";
text.match(/ain/gi);
Essayez-le vous-même »

Remarque

Si une expression régulière n'inclut pas le modificateur g (recherche globale), match() ne renverra que la première correspondance dans la chaîne.

Lisez-en plus sur les expressions régulières dans le chapitre JS RegExp .


JavaScript String matchAll()

La méthode matchAll() renvoie un itérateur contenant les résultats de la correspondance d'une chaîne avec une autre chaîne (ou une expression régulière).

Exemple

const iterator = text.matchAll("Chats");
Essayez-le vous-même »

Si le paramètre est une expression régulière, le drapeau global (g) doit être défini, sinon une TypeError est levée.

Exemple

const iterator = text.matchAll(/Chats/g);
Essayez-le vous-même »

Si vous souhaitez effectuer une recherche insensible à la casse, le drapeau insensible (i) doit être défini :

Exemple

const iterator = text.matchAll(/Chats/gi);
Essayez-le vous-même »

Remarques

matchAll() est une fonctionnalité ES2020 .

matchAll() ne fonctionne pas dans Internet Explorer.


JavaScript String includes()

La méthode includes() renvoie true si une chaîne contient une valeur spécifiée.

Sinon, elle renvoie false .

Exemples

Vérifiez si une chaîne inclut "monde" :

let text = "Bonjour le monde, bienvenue dans l'univers.";
text.includes("monde");
Essayez-le vous-même »

Vérifiez si une chaîne inclut "monde". Commencez à la position 12 :

let text = "Bonjour le monde, bienvenue dans l'univers.";
text.includes("monde", 12);
Essayez-le vous-même »

Remarques

includes() est sensible à la casse.

includes() est une fonctionnalité ES6 .


JavaScript String startsWith()

La méthode startsWith() renvoie true si une chaîne commence par une valeur spécifiée.

Sinon, elle renvoie false :

Exemples

Renvoie vrai :

let text = "Bonjour le monde, bienvenue dans l'univers.";
text.startsWith("Bonjour");
Essayez-le vous-même »

Renvoie faux :

let text = "Bonjour le monde, bienvenue dans l'univers.";
text.startsWith("monde")
Essayez-le vous-même »

Une position de départ pour la recherche peut être spécifiée :

Renvoie faux :

let text = "Bonjour le monde, bienvenue dans l'univers.";
text.startsWith("monde", 5)
Essayez-le vous-même »

Renvoie vrai :

let text = "Bonjour le monde, bienvenue dans l'univers.";
text.startsWith("monde", 6)
Essayez-le vous-même »

Remarques

startsWith() est sensible à la casse.

startsWith() est une fonctionnalité ES6 .


JavaScript String endsWith()

La méthode endsWith() renvoie true si une chaîne se termine par une valeur spécifiée.

Sinon, elle renvoie false :

Exemples

Vérifiez si une chaîne se termine par "Doe" :

let text = "John Doe";
text.endsWith("Doe");
Essayez-le vous-même »

Vérifiez si les 11 premiers caractères d'une chaîne se terminent par "monde" :

let text = "Bonjour le monde, bienvenue dans l'univers.";
text.endsWith("monde", 11);

Essayez-le vous-même »

Remarques

endsWith() est sensible à la casse.

endsWith() est une fonctionnalité ES6 .


Référence complète de JavaScript

Pour une référence complète à toutes les propriétés et méthodes JavaScript, avec des descriptions détaillées et de nombreux exemples, rendez-vous sur :

formation-ti.org' Référence complète de JavaScript .

La référence inclut toutes les mises à jour JavaScript de 1999 à 2025.