Get to know MDN better
Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
La méthode substring() retourne une sous-chaîne de la chaîne courante, entre un indice de début et un indice de fin.
Un entier compris entre 0 et la longueur de la chaîne.
indiceBParamètre optionnel : un entier compris entre 0 et la longueur de la chaine.
Une nouvelle chaîne de caractères qui correspond à la section souhaitée de la chaîne appelante.
substring extrait des caractères de la chaîne courante à partir de indiceA jusqu'à indiceB (non compris). On a notamment :
Si indiceA est supérieur à indiceB, la fonction substring() intervertira ces deux valeurs afin de les traiter comme si elles avaient été passées dans le bon ordre. Par exemple : str.substring(1, 0) == str.substring(0, 1).
Les exemples suivants utilisent la méthode substring() pour extraire et afficher des caractères à partir de la chaine "Mozilla" :
L'exemple suivant remplace une partie d'une chaine. Elle remplace à la fois les caractères individuels et les sous-chaines. La fonction appelée à la fin de cet exemple transforme la chaine "Brave New World" en "Brave New Web".
Attention : ceci peut résulter en une boucle infinie si oldS est elle-même une sous-chaine de newS — par exemple, si on essaie de remplacer "World" par "OtherWorld". Une meilleure solution serait de remplacer les chaines de cette manière :
Le code ci-dessus sert d'exemple pour les opérations sur les sous-chaines. S'il est nécessaire de remplacer des sous-chaines, la plupart du temps il faudrait préférer l'utilisation de String.prototype.replace().
Il existe une légère différence entre les méthodes substring() et substr(). Les deux ne doivent pas être confondues.
Les arguments de la méthode substring() représentent les indices de début et de fin sur la chaîne. Pour substr(), les arguments représentent l'indice de début et le nombre de caractères à utiliser pour la chaîne résultante.
Les méthodes substring() et slice() sont très proches mais certaines différences les distinguent, notamment la façon de gérer les arguments négatifs.
La méthode substring() échangera les deux arguments si indiceA est supérieur à indiceB et renverra donc une chaîne de caractères. La méthode slice() n'échange pas les arguments et renvoie donc une chaîne vide si le premier est supérieur au second :
Si l'un ou l'autre des arguments sont négatifs ou valent NaN, la méthode substring() les traitera comme s'ils valaient 0.
slice() traite également NaN comme 0, mais parcourt la chaîne à partir de la fin lorsque des arguments négatifs sont utilisés.
Pour plus d'exemples sur l'utilisation d'arguments négatifs, voir la page slice().
| ECMAScript® 2027 Language Specification # sec-string.prototype.substring |
Activez JavaScript pour afficher ce tableau de compatibilité des navigateurs.
Cette page a été modifiée le 17 févr. 2025 par les contributeur·ice·s du MDN.
Votre modèle pour un internet meilleur.
Visitez la société mère à but non lucratif de Mozilla Corporation, la Fondation Mozilla.
Certaines parties de ce contenu sont protégées par le droit d'auteur ©1998—2026 des contributeurs individuels de mozilla.org. Contenu disponible sous une licence Creative Commons.