Chaîne de caractères
Terme informatique, utilisé en programmation, qui défini un type de donnée fait d'une suite ordonnée de caractères. Elle sert à représenter du texte.
Codage
Une chaîne peut être codée (par exemples) en ASCII, UTF-8 ou UTF-16 ou encore iso-latin1.
Soit elle se termine par un caractère de fin de chaîne (zéro binaire en langage C, et on parle alors d'ASCIIZ pour indiquer « terminé par un Zéro »), soit le nombre de caractères est stocké en parallèle (Basic, Pascal, PL/I). Dans certains langages orientés objet, le codage interne de la chaîne n'a pas besoin d'être connu (encapsulation).
| F | R | A | N | K | NUL | k | e | f | w |
| 46 | 52 | 41 | 4E | 4B | 00 | 6B | 65 | 66 | 77 |
| length | F | R | A | N | K | k | f | f | w |
| 05 | 46 | 52 | 41 | 4E | 4B | 6B | 66 | 66 | 77 |
Sucre syntaxique
Généralement, une chaîne de caractères est représentée entourée par des guillemets. Exemples :
-
"Wikipedia" -
'Cette phrase est une chaîne de caractères.' -
"123" -
'Première solution pour contenir le délimiteur \', un caractère d'échappement' -
"Seconde solution pour contenir le délimiteur"", le doublage du délimiteur"
Algorithmes
Plusieurs algorithmes font partie de l'état de l'art pour traiter les chaînes, chacun pouvant connaître différentes formes. Quelques exemples de catégories de tels algorithmes :
- algorithmes de recherche de sous-chaîne(s) comme celui de Boyer-Moore
- algorithmes de recherche d'expressions régulières
- algorithmes de tri.
- algorithmes de tri en Unicode ; Classement alphabétique
- parsing une chaîne
- Algorithmes de conversion (unicode, capitalisation, transcodages...).
Le programmeur n'a, aujourd'hui, généralement plus à s'en préoccuper (même s'il doit en connaître le principe), ces algorithmes étant directement utilisés par les primitives du langage.
