Un caractère qui n’est pas un caractère alphabétique ou numérique est appelé un caractère spécial. Nous devons supprimer tous les caractères spéciaux de la chaîne afin de pouvoir lire la chaîne clairement et couramment. Les caractères spéciaux ne sont pas lisibles, il serait donc bon de les supprimer avant de les lire.
commande de retour java
Méthode Java replaceAll()
Java remplace tout() méthode de Chaîne class remplace chaque sous-chaîne de cette chaîne qui correspond à l'expression régulière donnée par le remplacement.
Syntaxe
public String replaceAll(String regex, String replacement)
Cette méthode accepte deux paramètres:
Il renvoie le Chaîne résultante . Ça jette PatternSyntaxException si la syntaxe de l'expression régulière n'est pas valide. La méthode ci-dessus donne le même résultat que l'expression :
Pattern.compile(regex).matcher(str).replaceAll(repl)
Exemple de suppression de caractères spéciaux à l'aide de la méthode replaceAll()
Dans l'exemple suivant, la méthode RemoveAll() supprime tous les caractères spéciaux de la chaîne et les remplace par un espace.
public class RemoveSpecialCharacterExample1 { public static void main(String args[]) { String str= 'This#string%contains^special*characters&.'; str = str.replaceAll('[^a-zA-Z0-9]', ' '); System.out.println(str); } }
Sortir
This string contains special characters
Exemple
Dans l'exemple suivant, nous remplaçons tous les caractères spéciaux par l'espace.
public class RemoveSpecialCharacterExample2 { public static void main(String args[]) { String str = 'Hello+-^Java+ -Programmer^ ^^-- ^^^ +!'; str = str.replaceAll('[-+^]*', ' '); //str=str.replaceAll('\W', ' ') //we can also use this regular expression System.out.println(str); } }
Sortir
arbres évasés
Hello Java Programmer !
Exemple de suppression de caractères spéciaux à l'aide d'une logique définie par l'utilisateur
Dans l'exemple suivant, nous définissons une logique pour supprimer les caractères spéciaux d'une chaîne. Nous savons que la valeur ASCII des alphabets de lettres majuscules commence entre 65 et 90 (A-Z) et que la valeur ASCII de l'alphabet des lettres minuscules commence entre 97 et 122 (a-z). Chaque caractère est comparé à sa valeur ASCII correspondante. Si les deux conditions spécifiées renvoient vrai, elles renvoient vrai, sinon elles renvoient faux. Le pour la boucle s'exécute jusqu'à la longueur de la chaîne. Lorsque la chaîne atteint sa taille, elle termine l'exécution et nous obtenons la chaîne résultante.
public class RemoveSpecialCharacterExample3 { public static void main(String[] args) { //declare a string having special characters String str='Pr!ogr#am%m*in&g Lan?#guag(e'; String resultStr=''; //loop execute till the length of the string for (int i=0;i64 && str.charAt(i)<=122) returns true if both conditions { adding characters into empty string resultstr="resultStr+str.charAt(i);" } system.out.println('string after removing special characters: '+resultstr); < pre> <p> <strong>Output</strong> </p> <pre> String after removing special characters: ProgrammingLanguage </pre> <hr></=122)>
=122)>