Introduction
Dans ce laboratoire, vous allez apprendre à supprimer les valeurs numériques d'une chaîne de caractères en Java. Les chaînes de caractères en Java peuvent contenir des caractères alphanumériques et des symboles spéciaux. Par conséquent, parfois il est nécessaire de filtrer la chaîne pour ne conserver que les caractères alphabétiques. Dans ce laboratoire, nous allons utiliser la méthode replaceAll(), qui prend deux arguments : une expression régulière pour filtrer la chaîne et une chaîne de remplacement.
Créer un nouveau fichier Java
Accédez au répertoire ~/projet et créez un nouveau fichier Java en utilisant la commande suivante :
touch RemoveNumericValues.java
Définir la méthode main()
Ouvrez le fichier RemoveNumericValues.java dans un éditeur de texte et définissez la méthode main() comme suit :
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "House123sector4";
System.out.println("Chaîne d'origine : " + str);
}
}
Utiliser des expressions régulières pour supprimer les valeurs numériques
Dans cette étape, nous allons utiliser une expression régulière pour supprimer les valeurs numériques de la chaîne de caractères.
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "House123sector4";
System.out.println("Chaîne d'origine : " + str);
str = str.replaceAll("[^A-Za-z]", "");
System.out.println("Chaîne ne contenant que des caractères alphabétiques : " + str);
}
}
Dans le code ci-dessus, nous avons utilisé la méthode replaceAll() pour remplacer tous les caractères sauf les caractères alphabétiques de la chaîne str. L'expression régulière [A-Za-z] correspondra à tous les caractères de A à Z et de a à z.
Utiliser des expressions régulières pour supprimer les chiffres
Dans cette étape, nous allons utiliser une expression régulière pour supprimer les chiffres de la chaîne de caractères.
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "House123sector4";
System.out.println("Chaîne d'origine : " + str);
str = str.replaceAll("\\d", "");
System.out.println("Chaîne ne contenant que des caractères alphabétiques : " + str);
}
}
Dans le code ci-dessus, nous avons utilisé la méthode replaceAll() pour remplacer tous les chiffres de la chaîne str. L'expression régulière \\d correspondra à tous les chiffres présents dans la chaîne.
Utiliser des expressions régulières pour supprimer les chiffres (méthode alternative)
Dans cette étape, nous allons utiliser une autre expression régulière pour supprimer les chiffres de la chaîne de caractères.
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "House123sector4";
System.out.println("Chaîne d'origine : " + str);
str = str.replaceAll("[0-9]", "");
System.out.println("Chaîne ne contenant que des caractères alphabétiques : " + str);
}
}
Dans le code ci-dessus, nous avons utilisé la méthode replaceAll() pour remplacer tous les chiffres de la chaîne str. L'expression régulière [0-9] correspondra à tous les chiffres présents dans la chaîne.
Compiler et exécuter le code
Enregistrez les modifications apportées au fichier RemoveNumericValues.java, ouvrez le terminal, accédez au répertoire du projet et entrez la commande suivante pour compiler le code :
javac RemoveNumericValues.java
Une fois le code compilé avec succès, entrez la commande suivante pour exécuter le code :
java RemoveNumericValues
La sortie du code sera affichée sur le terminal.
Modifier la chaîne d'entrée
Pour tester le code avec différentes chaînes d'entrée, modifiez la chaîne str en une valeur de votre choix.
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "Hello%&$3World";
System.out.println("Chaîne d'origine : " + str);
str = str.replaceAll("[^A-Za-z]", "");
System.out.println("Chaîne ne contenant que des caractères alphabétiques : " + str);
}
}
Tester la méthode alternative
Modifiez la version précédente du code pour tester la méthode alternative comme suit :
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "Hello%&$3World";
System.out.println("Chaîne d'origine : " + str);
str = str.replaceAll("[0-9]", "");
System.out.println("Chaîne ne contenant que des caractères alphabétiques : " + str);
}
}
Tester la deuxième méthode
Modifiez la version précédente du code pour tester la deuxième méthode comme suit :
public class RemoveNumericValues {
public static void main(String[] args) {
String str = "Hello%&$3World";
System.out.println("Chaîne d'origine : " + str);
str = str.replaceAll("\\d", "");
System.out.println("Chaîne ne contenant que des caractères alphabétiques : " + str);
}
}
Résumé
Dans ce laboratoire, nous avons appris à supprimer les valeurs numériques d'une chaîne de caractères en Java. Nous avons utilisé la méthode replaceAll() avec différents expressions régulières pour filtrer la chaîne et n'obtenir que les caractères alphabétiques. Nous avons également appris à tester le code avec différentes chaînes d'entrée.



