Java에서 문자열의 여러 문자 바꾸기

Rupam Yadav 2023년10월12일
  1. Java에서replaceAll()을 사용하여 문자열의 여러 문자 바꾸기
  2. Java에서String.replace()를 사용하여 문자열의 여러 문자 바꾸기
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 Yadav
Rupam Yadav avatar Rupam Yadav avatar

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

관련 문장 - Java String