Java에서 문자열의 여러 문자 바꾸기
 
String.replaceAll()및String.replace()는 Java에서 문자열의 문자를 대체하는 두 가지 유용한 방법입니다. 이 기사에서는이 두 가지 방법을 사용하여 문자열의 여러 문자를 대체하는 방법을 알아 봅니다.
replaceAll()은 정규 표현식을 사용하여 단독으로 할 수 있지만 정규 표현식을 사용하지 않으려면replace()메소드를 사용할 수 있습니다.
Java에서replaceAll()을 사용하여 문자열의 여러 문자 바꾸기
replaceAll()은 지정된 모든 문자를 교체하고자 할 때 사용됩니다. 정규식을 사용하여 교체 할 문자를 지정할 수 있습니다. 이 메서드는 두 개의 인수를 취합니다. 첫 번째는 정규식 패턴이고 두 번째는 배치하려는 문자입니다.
다음 예에서는 몇 가지 일반적인 정규 표현식을 사용하여 여러 문자를 대체합니다.
public class ReplaceAllChars {
  public static void main(String[] args) {
    String stringUnderscoresForward = "j_u_s_t_a_s/t/r/i/n/g";
    String stringWithDigits = "abcd12345efgh";
    String stringWithWhiteSpaces = "s t r i n g";
    String stringWithLowerCase = "This is a Lower Case String";
    String finalString1 = stringUnderscoresForward.replaceAll("[_/]", "-");
    String finalString2 = stringWithDigits.replaceAll("[\\d]", "");
    String finalString3 = stringWithWhiteSpaces.replaceAll("[ ]", "");
    String finalString4 = stringWithWhiteSpaces.replaceAll("[\\s]", "-");
    String finalString5 = stringWithLowerCase.replaceAll("[\\p{Lower}]", "");
    System.out.println("Old String: " + stringUnderscoresForward + " New String: " + finalString1);
    System.out.println("Old String: " + stringWithDigits + " New String: " + finalString2);
    System.out.println("Old String: " + stringWithWhiteSpaces + " New String: " + finalString3);
    System.out.println("Old String: " + stringWithLowerCase + " New String: " + finalString4);
    System.out.println("Old String: " + stringWithLowerCase + " New String: " + finalString5);
  }
}
출력:
Old String: j_u_s_t_a_s/t/r/i/n/g --New String: j-u-s-t-a-s-t-r-i-n-g
Old String: abcd12345efgh --New String: abcdefgh
Old String: s t r i n g --New String: string
Old String: This is a Lower Case String --New String: s-t-r-i-n-g
Old String: This is a Lower Case String --New String: T   L C S
위의 예에서는 일반적으로 사용되는 여러 정규식을 사용합니다. 그 의미와 작동 방식을 살펴 보겠습니다.
stringUnderscoresForward에는 밑줄과 슬래시로 구분 된 모든 문자가 있습니다. 모두 대시 (-)로 대체합니다. [char1 char2]는 두 문자를 단일 문자로 바꾸는 데 사용되는 정규식입니다. [_/]를 사용하여 모든 밑줄과 슬래시를 대시로 바꿀 수 있습니다.
stringWithDigits는 임의의 알파벳과 그 사이에 숫자가있는 문자열입니다. 모든 숫자를 빈 문자로 바꾸고 싶습니다. 이를 위해 숫자를 이스케이프하는\d 이스케이프 시퀀스를 사용할 수 있습니다. [\\d]는 정규식으로 사용되며 대체 문자는 빈 문자가됩니다.
stringWithWhiteSpaces는 모든 문자 사이에 공백을 포함합니다. 공백을 제거하기 위해 공백 문자로 바꿀 수 있습니다. 공백[ ]가있는 빈 괄호는 문자열의 공백을 나타냅니다.
[\\s]를 사용하여 문자열의 공백을 가져올 수도 있습니다.
stringWithLowerCase에는 소문자와 대문자가 모두 있습니다. 모든 소문자를 빈 문자로 바꾸고 싶습니다. 모든 소문자를 얻기 위해 정규식 인[\\p{Lower}]를 사용합니다.
Java에서String.replace()를 사용하여 문자열의 여러 문자 바꾸기
    
public class ReplaceAllChars {
  public static void main(String[] args) {
    String stringWithRandomChars = "javbjavcjadakavajavc";
    String finalString =
        stringWithRandomChars.replace("b", "a").replace("c", "a").replace("d", "v").replace(
            "k", "j");
    System.out.println(finalString);
  }
}
출력:
javajavajavajavajava
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn