À retenir
- C'est une partie d'un texte plus vaste.
- Elle est toujours contiguë (les caractères se suivent sans saut).
- Elle est définie par une position de départ et une longueur (ou une position de fin).
Une sous-chaîne est une portion extraite d'un texte plus long (une chaîne de caractères). On peut l'imaginer comme un segment découpé dans un ruban : c'est un morceau continu qui conserve l'ordre des lettres d'origine.
Étymologie
Le terme est composé du préfixe sous- (indiquant une dépendance ou une partie d'un ensemble) et du mot chaîne (pour « chaîne de caractères »). Il s'agit du calque exact de l'anglais substring, apparu avec la standardisation des langages de programmation manipulant du texte.
Exemples d'usage
- Dans la phrase "Bonjour tout le monde", "jour" est une sous-chaîne.
- Dans un code postal comme "75001", la sous-chaîne "75" représente le numéro du département.
- Dans l'URL "https://www.wikipedia.org", "wikipedia" est une sous-chaîne extraite du nom de domaine.
Cas d'usage
Ce concept est omniprésent pour le traitement de données textuelles : isoler un nom d'utilisateur dans une adresse email, vérifier si un mot-clé est présent dans un article, ou encore raccourcir un texte trop long (le fameux "Lire la suite...").
Bonnes pratiques
Avant d'extraire une sous-chaîne, assurez-vous que les limites (index de début et de fin) ne dépassent pas la taille réelle du texte, sinon le programme risque de s'arrêter brutalement (erreur de type Out of Range). Pensez aussi à vérifier si votre langage inclut ou exclut l'index de fin lors du découpage.
Synonymes
Antonymes
Conseil
Quand vous débutez, faites attention à la « règle du zéro » : dans la plupart des langages (Python, JavaScript, C#, etc.), la première lettre d'une chaîne se trouve à la position 0, et non 1. C'est le piège classique lors de l'extraction d'une sous-chaîne.
Questions fréquentes
Une chaîne peut-elle être une sous-chaîne d'elle-même ?
Oui, en programmation, une chaîne est considérée comme sa propre sous-chaîne la plus longue.
Qu'est-ce qu'une sous-chaîne vide ?
C'est une portion qui ne contient aucun caractère. Elle est théoriquement présente partout dans n'importe quel texte.
Quelle est la différence entre sous-chaîne et sous-suite ?
Une sous-chaîne doit être composée de caractères qui se suivent, alors qu'une sous-suite peut sauter des caractères du texte d'origine.