Maîtriser les chaînes C# : Fondamentaux, opérations et techniques avancées
Maîtriser les chaînes C# : Fondamentaux, opérations et techniques avancées
Dans ce tutoriel, nous allons apprendre sur les chaînes C# et leurs méthodes avec des exemples.
En C#, une chaîne est une séquence de caractères. Par exemple, "hello" est une chaîne contenant une séquence de caractères 'h', 'e', 'l', 'l' et 'o'.
Nous utilisons le mot-clé string pour créer une chaîne. Par exemple,
// créer une chaîne
string str = "C# Programmation";
Ici, nous avons créé une string nommée str et assigné le texte "C# Programmation". Nous utilisons des guillemets doubles pour représenter les chaînes en C#.
Exemple : Créer une chaîne en C#
using System;
namespace CsharpString {
class Test {
public static void Main(string[] args) {
// créer chaîne
string str1 = "C# Programmation";
string str2 = "Programiz";
// afficher chaîne
Console.WriteLine(str1);
Console.WriteLine(str2);
Console.ReadLine();
}
}
}
Sortie
C# Programmation Programiz
Dans l'exemple ci-dessus, nous avons créé deux chaînes nommées str1 et str2 et les avons affichées.
Note : Une variable string en C# n'est pas de type primitif comme int, char, etc. C'est un objet de la classe String.
Opérations sur les chaînes
C# string fournit diverses méthodes pour effectuer différentes opérations sur les chaînes. Nous examinerons certaines des opérations sur les chaînes couramment utilisées.
1. Obtenir la longueur d'une chaîne
Pour trouver la longueur d'une chaîne, nous utilisons la propriété Length. Par exemple,
using System;
namespace CsharpString {
class Test {
public static void Main(string[] args) {
// créer chaîne
string str = "C# Programmation";
Console.WriteLine("chaîne : " + str);
// obtenir longueur de str
int length = str.Length;
Console.WriteLine("Longueur : " + length);
Console.ReadLine();
}
}
}
Sortie
chaîne : C# Programmation Longueur : 14
Dans l'exemple ci-dessus, la propriété Length calcule le nombre total de caractères dans la chaîne et le retourne.
2. Joindre deux chaînes en C#
Nous pouvons joindre deux chaînes en C# en utilisant la méthode Concat(). Par exemple,
using System;
namespace CsharpString {
class Test {
public static void Main(string[] args) {
// créer chaîne
string str1 = "C# ";
Console.WriteLine("chaîne str1 : " + str1);
// créer chaîne
string str2 = "Programmation";
Console.WriteLine("chaîne str2 : " + str2);
// joindre deux chaînes
string joinedString = string.Concat(str1, str2);
Console.WriteLine("Chaîne jointe : " + joinedString);
Console.ReadLine();
}
}
}
Sortie
chaîne str1 : C# chaîne str2 : Programmation Chaîne jointe : C# Programmation
Dans l'exemple ci-dessus, nous avons créé deux chaînes nommées str1 et str2. Remarquez l'instruction,
string joinedString = string.Concat(str1, str2);
Ici, la méthode Concat() joint str1 et str2 et l'assigne à la variable joinedString.
Nous pouvons aussi joindre deux chaînes en utilisant l'opérateur + en C#. Pour en savoir plus, visitez Concaténation de chaînes C#.
3. Comparer deux chaînes en C#
En C#, nous pouvons faire des comparaisons entre deux chaînes en utilisant la méthode Equals(). La méthode Equals() vérifie si deux chaînes sont égales ou non. Par exemple,
using System;
namespace CsharpString {
class Test {
public static void Main(string[] args) {
// créer chaîne
string str1 = "C# Programmation";
string str2 = "C# Programmation";
string str3 = "Programiz";
// comparer str1 et str2
Boolean result1 = str1.Equals(str2);
Console.WriteLine("chaîne str1 et str2 sont égales : " + result1);
// comparer str1 et str3
Boolean result2 = str1.Equals(str3);
Console.WriteLine("chaîne str1 et str3 sont égales : " + result2);
Console.ReadLine();
}
}
}
Sortie
chaîne str1 et str2 sont égales : True chaîne str1 et str3 sont égales : False
Dans l'exemple ci-dessus, nous avons créé 3 chaînes nommées str1, str2 et str3. Ici, nous utilisons la méthode Equals() pour vérifier si une chaîne est égale à une autre.
Immuabilité des objets String
En C#, les chaînes sont immuables. Cela signifie qu'une fois que nous créons une chaîne, nous ne pouvons pas la changer.
Pour le comprendre, considérons un exemple :
// créer chaîne
string str = "Hello ";
Ici, nous avons créé une variable de chaîne nommée str. La variable contient la chaîne "Hello ".
Maintenant, supposons que nous voulions changer la chaîne str.
// ajouter une autre chaîne "World"
// à la chaîne précédente
str = string.Concat(str, "World");
Ici, nous utilisons la méthode Concat() pour ajouter la chaîne "World" à la chaîne précédente str.
Mais comment sommes-nous capables de modifier la chaîne alors qu'elles sont immuables ?
Voyons ce qui s'est passé ici :
- C# prend la valeur de la chaîne
"Hello ". - Crée une nouvelle chaîne en ajoutant
"World"à la chaîne"Hello ". - Crée un nouvel objet chaîne, lui donne la valeur
"Hello World"et le stocke dans str. - La chaîne originale,
"Hello ", qui était assignée à str est libérée pour le ramasse-miettes car aucune autre variable ne détient de référence vers elle.
Séquences d'échappement de chaînes
Le caractère d'échappement est utilisé pour échapper certains des caractères présents à l'intérieur d'une chaîne. En d'autres termes, nous utilisons les séquences d'échappement pour insérer des caractères spéciaux à l'intérieur de la chaîne.
Supposons que nous ayons besoin d'inclure des guillemets doubles à l'intérieur d'une chaîne.
// inclure guillemet double
string str = "This is the "String" class";
Puisque les chaînes sont représentées par des guillemets doubles, le compilateur traitera "This is the " comme la chaîne. Et le code ci-dessus causera une erreur.
Pour résoudre ce problème, nous utilisons le caractère d'échappement \" en C#. Par exemple,
// utiliser le caractère d'échappement
string str = "This is the \"String\" class.";
Maintenant, en utilisant \ avant le guillemet double ", nous pouvons l'inclure dans la chaîne.
Quelques séquences d'échappement en C# sont les suivantes :
| Séquence d'échappement | Nom du caractère |
|---|---|
\' | guillemet simple |
\" | guillemet double |
\\ | backslash |
\0 | null |
\n | nouvelle ligne |
\t | tabulation horizontale |
Interpolation de chaînes
En C#, nous pouvons utiliser l'interpolation de chaînes pour insérer des variables à l'intérieur d'une chaîne. Pour l'interpolation de chaînes, le littéral de chaîne doit commencer avec le caractère $. Par exemple,
using System;
namespace CsharpString {
class Test {
public static void Main(string[] args) {
// créer chaîne
string name = "Programiz";
// interpolation de chaîne
string message = $"Bienvenue à {name}";
Console.WriteLine(message);
Console.ReadLine();
}
}
}
Sortie
Bienvenue à Programiz
Dans l'exemple ci-dessus, nous utilisons la variable name à l'intérieur de la chaîne message.
string message = $"Bienvenue à {name}";
Remarquez que,
- le littéral de chaîne commence avec
$ - la variable name est placée à l'intérieur des accolades
{}
Méthodes de la chaîne C#
Il existe diverses méthodes de chaîne en C#. Certaines d'entre elles sont les suivantes :
| Méthodes | Description |
|---|---|
Format() | retourne une chaîne formatée |
Split() | divise la chaîne en sous-chaînes |
Substring() | retourne une sous-chaîne d'une chaîne |
Compare() | compare des objets chaîne |
Replace() | remplace le caractère ancien spécifié par le nouveau caractère spécifié |
Contains() | vérifie si la chaîne contient une sous-chaîne |
Join() | joint les chaînes données en utilisant le séparateur spécifié |
Trim() | supprime les espaces blancs de début et de fin |
EndsWith() | vérifie si la chaîne se termine par la chaîne donnée |
IndexOf() | retourne la position du caractère spécifié dans la chaîne |
Remove() | retourne des caractères d'une chaîne |
ToUpper() | convertit la chaîne en majuscules |
ToLower() | convertit la chaîne en minuscules |
PadLeft() | retourne chaîne rembourrée avec espaces ou caractère Unicode spécifié à gauche |
PadRight() | retourne chaîne rembourrée avec espaces ou caractère Unicode spécifié à droite |
StartsWith() | vérifie si la chaîne commence par la chaîne donnée |
ToCharArray() | convertit la chaîne en tableau char |
LastIndexOf() | retourne l'index de la dernière occurrence d'une chaîne spécifiée |
Questions Fréquemment Posées
1. Comment créer un tableau de chaînes en C# ?
Un tableau de chaînes est créé de la même façon qu'un tableau pour les types de données. Par exemple,
using System;
namespace CsharpString {
class Test {
public static void Main(string[] args) {
// tableau de type string
string[] animaux = {"Singe", "Chien", "Chat"};
// afficher éléments du tableau
Console.WriteLine(animaux[0]);
Console.WriteLine(animaux[1]);
Console.WriteLine(animaux[2]);
Console.ReadLine();
}
}
}
Sortie
Singe Chien Chat
2. Différence entre string et String en C#
Il n'y a pas de différence technique entre string et String. En C#, string est un alias pour System.String.
Il est recommandé d'utiliser string car il fonctionne même sans using System;.
Langue C
- Maîtriser les chaînes de caractères en Java : Création, méthodes et bonnes pratiques
- Maîtriser les représentations en chaînes dans les enums Java
- Maîtriser les fonctions de chaînes C++ : strcpy, strcat, strlen, strcmp – Exemples pratiques
- Chaînes de caractères en C simplifiées : Déclaration, entrée, sortie et fonctions de bibliothèque
- Comprendre Java String.charAt() : Syntaxe, type de retour, exceptions et exemple pratique
- Maîtriser Java String.endsWith() : Comment vérifier les suffixes de chaînes avec exemples
- Maîtriser la méthode strip() de Python : Guide complet et exemples pratiques
- Maîtriser str.count() de Python : Compter caractères et sous-chaînes avec exemples
- Maîtriser les chaînes format() en Python avec exemples clairs