Java >> Java tutorial >  >> Tag >> char

Erstat specialtegn i Java

Erstat specialtegn i Java | De tegn, der ikke er numeriske og alfabetiske, betegnes som specialtegn undtagen mellemrumstegnene. Eksempel:- "[email protected]#$%^&*()" disse tegn kaldes specialtegn. I dette indlæg vil vi se Java erstatte alle specialtegn. Se også:- Java-program til at finde strengen

Disse specialtegn er nogle gange uønskede i strengen, eller vi kan have skrevet dem ved en fejl. For at fjerne eller erstatte disse specialtegn kan vi derfor tage hjælp af replace() eller replaceAll() metoden i Java String-klassen. Disse er indbyggede metoder i Java, der giver os mulighed for at fjerne artstegnene eller tegnsekvensen fra den givne streng.

Lad os se eksemplet for at forstå mere. I eksemplet nedenfor erstattes specialtegn med 'X'-tegn.

String word = "Spec$$ial Characters";
System.out.println(word.replaceAll("[[email protected]#$%^&]", "X"));

Output:-

Specielle tegn

Erstat specialtegn i Java ved hjælp af replaceAll()

Syntaksen for replaceAll()-metoden er følgende:- public String replaceAll(String regex, String replacement)

Parameter:- regex – det regulære udtryk, som denne streng skal matches til; erstatning – strengen, der skal erstattes for hver kamp.
Return :- Den resulterende streng.
Kaster:- PatternSyntaxException – hvis det regulære udtryks syntaks er ugyldig.

Java erstatter specialtegn ved at bruge replaceAll()

public class Main {
   public static void main(String[] args) {
      String str = "[email protected]#$Programming Language";
      System.out.println(str.replaceAll("[@#$%^&*]", "K"));
   }
}

Output:-

JavaKKK-programmeringssprog

Java fjern specialtegn ved at bruge replaceAll()

Hvis vi ønsker at fjerne et specialtegn fra den givne streng, skal vi sende en tom streng som den anden parameter til replaceAll()-metoden.

public class Main {
   public static void main(String[] args) {
      String str = "[email protected]#$Programming Language";
      System.out.println(str.replaceAll("[@#$%^&*]", ""));
   }
}

Output:-

Java-programmeringssprog

Se et andet eksempel for at demonstrere replaceAll()

public class Main {
   public static void main(String[] args) {
      String str = "Know ##Pr%ogram*#2025";
      System.out.println("Actual String = " + str);

      str = str.replaceAll("[^a-zA-Z0-9]", "");
      System.out.println("String after replacement = " + str);
   }
}

Output:

Faktisk streng =Know ##Pr%ogram*#2025
String efter udskiftning =KnowProgram2025

I ovenstående eksempel, undtagen 'a' til 'z', 'A', til 'Z' og '0' til '9], fjernes alle andre tegn fra strengen.

Java fjerner specielle tegn uden at bruge replaceAll()-metoden

public class Main {
   public static void main(String[] args) {
      String string = "[email protected]#a Pr^ogram$$min&g";
      for (int i = 0; i < string.length(); i++) {
         char ch = string.charAt(i);
         if ((ch < 'A' || ch > 'Z') && (ch < 'a' || ch > 'z') 
               && (ch < '0' || ch > '9')) {
            string = string.substring(0, i) + string.substring(i + 1);
            i--;
         }
      }
      System.out.print(string);
   }
}

Output:-

Java-programmering

I ovenstående eksempel har vi itereret gennem strengen tegn for tegn &kontrolleret, om det givne tal er et specielt tal eller ej. Hvis tegnet er et alfabet eller et tal, er det ikke et specielt tal, ellers er det et specialtegn, og det skal fjernes fra den givne streng.


Java tag