C# Identifier si une chaîne est un nombre
-
Programme C# pour identifier si une
chaîne
est un nombre en utilisant la méthodeEnumerable.All()
-
Programme C# pour identifier si une
chaîne
est un nombre en utilisant la méthodeRegex.IsMatch()
-
Programme C# pour identifier si une
chaîne
est un nombre en utilisant la méthodeInt32.TryParse()
-
Programme C# pour identifier si une
chaîne
est un nombre Utilisation de la boucleforeach
En traitant les problèmes du monde réel, nous sommes parfois confrontés à un problème où nous voulons prendre une entrée comme une chaîne
mais l’utiliser comme un “entier”. Pour que cela soit possible, nous devons toujours confirmer que la chaîne
d’entrée est un nombre ou non.
En C#, nous pouvons utiliser de nombreuses méthodes pour identifier si une chaîne
d’entrée est un nombre ou non. Vous découvrirez ces méthodes en lisant cet article jusqu’à la fin.
Programme C# pour identifier si une chaîne
est un nombre en utilisant la méthode Enumerable.All()
La méthode Enumerable.All()
appartient à LINQ
. LINQ
fait partie de C# et est utilisé pour accéder à différentes bases de données et sources de données. Nous pouvons modifier cette méthode pour vérifier si une chaîne
est un nombre. Nous passerons la méthode char.IsDigit()
comme paramètre à la méthode Enumerable.All()
.
La syntaxe correcte pour utiliser cette méthode est la suivante:
StringName.All(char.IsDigit);
Exemple de code:
using System;
using System.Linq;
public class IdentifyString {
public static void Main() {
string number = "123456";
if (number.All(char.IsDigit)) {
Console.WriteLine("The Given String is a Number.");
} else {
Console.WriteLine("The Given String is Not a Number.");
}
}
}
Production:
The Given String is a Number.
Programme C# pour identifier si une chaîne
est un nombre en utilisant la méthode Regex.IsMatch()
En C#, nous pouvons utiliser des expressions régulières
pour vérifier divers motifs. Une expression régulière
est un motif spécifique pour effectuer une action spécifique. En C#, nous avons les expressions régulières ^[0-9]+$
et ^\d+$
pour vérifier si une chaîne
est un nombre.
La syntaxe correcte pour utiliser cette méthode est la suivante:
Regex.IsMatch(StringName, @"Expression");
Exemple de code:
using System;
using System.Text.RegularExpressions;
public class IdentifyString {
public static void Main() {
string number = "123456";
if (Regex.IsMatch(number, @"^[0-9]+$")) {
Console.WriteLine("The Given String is a Number.");
} else {
Console.WriteLine("The Given String is Not a Number.");
}
}
}
Production:
The Given String is a Number.
Ici, le point important est que les deux expressions régulières
, ^[0-9]+$
et ^\d+$
ne sont pas les mêmes dans leur fonctionnement. L’expression ^[0-9]+$
est utilisée pour les caractères de base 0-9 mais ^\d+$
est utilisé pour les caractères Decimal digit
dans l’Unicode, sans RegexOptions.ECMAScript
spécifié (par défaut). Par exemple, ๔
comme 4
en thaïlandais, est également identifié comme un nombre.
Programme C# pour identifier si une chaîne
est un nombre en utilisant la méthode Int32.TryParse()
La méthode Int32.TryParse()
est utilisée pour convertir la chaîne
de nombres en un entier signé de 32 bits. Si la chaîne
n’est pas numérique, elle n’est pas convertie avec succès, et cette méthode retourne donc faux.
La syntaxe correcte pour utiliser cette méthode est la suivante:
Int32.TryParse(StringName, out intvariable);
Ici, invariable
est toute variable entier
non initialisée.
Exemple de code:
using System;
public class IdentifyString {
public static void Main() {
int n;
string number = "123456";
bool result = Int32.TryParse(number, out n);
if (result) {
Console.WriteLine("The Given String is a Number.");
} else {
Console.WriteLine("The Given String is Not a Number.");
}
}
}
Production:
The Given String is a Number.
Programme C# pour identifier si une chaîne
est un nombre Utilisation de la boucle foreach
C’est le processus le plus élémentaire pour déterminer si une chaîne
est un nombre. Dans ce processus, nous vérifierons que chaque caractère de la chaîne
est un nombre en utilisant la boucle “avant”.
La syntaxe correcte pour utiliser la boucle foreach
est la suivante:
foreach (datatype variablename in somecollection) {
// steps to iterate
}
Exemple de code:
using System;
public class IdentifyString {
// custom method to check if a string is a number
public static bool CustomMethod(string number) {
foreach (char c in number) {
if (c >= '0' && c <= '9') {
return true;
}
}
return false;
}
public static void Main() {
string number = "123456";
if (CustomMethod(number)) {
Console.WriteLine("The Given String is a Number.");
} else {
Console.WriteLine("The Given String is Not a Number.");
}
}
}
Production:
The Given String is a Number.
Article connexe - Csharp String
- C# Convert String to enum
- C# Convertir Int en String
- Utiliser des chaînes dans l'instruction Switch en C#
- Comment convertir une chaîne de caractères en booléen en C#
- Comment convertir une chaîne de caractères en un tableau d'octets en C#
- Comment convertir une chaînes de caractères pour qu'elle flotte en C#