Java에서 문자열에서 부분 문자열을 제거하는 방법

  1. Java에서 부분 문자열을 제거하는replace()메소드
  2. Java의 문자열에서 문자를 제거하는StringBuffer.replace()메소드
  3. Java의 문자열에서 부분 문자열을 제거하는replaceAll()메소드

이 학습서에서는 Java로 지정된 문자열에서 서브 스트링을 제거하는 방법을 학습합니다.

Java에서 부분 문자열을 제거하는replace()메소드

부분 문자열을 제거 / 대체하기 위해 가장 일반적으로 사용되는 방법은 Java String 클래스의replace()방법입니다.

string.replace(char oldChar, char newChar)

첫 번째 매개 변수는 교체 할 하위 문자열이고 두 번째 매개 변수는 첫 번째 매개 변수를 대체 할 새 하위 문자열입니다.

예제 코드:

import java.util.List;
import java.text.*;

public class SimpleTesting {
    public static void main(String[] args)  {
        String originalstring = "This is Simple Testing";
        String replace = originalstring.replace('i', 'a');
        System.out.println("Original String: " + originalstring);
        System.out.println("Modified String with Replacement: " +
                        originalstring.replace('i', 'a'););
    }
}

산출:

Original String: This is Simple Testing
Modified String with Replacement: Thas as Sample Testang

Java의 문자열에서 문자를 제거하는StringBuffer.replace()메소드

이 메소드는 주어진 인덱스 범위에서 하위 문자열을 제거 / 대체 할 수 있습니다. Java StringBufferString과 유사하지만 mutable입니다.

StringBuffer.replace()메소드의 문법은,

StringBuffer replace(int start,
                   int end,
                   String str)

startend는 지정된 범위의 시작과 끝 인덱스입니다. start는 포괄적이고end는 독점적입니다. 따라서 실제 범위는 [start, end-1]입니다.

str은 위에서 지정한 범위의 내용을 대체하는 문자열입니다.

예제 코드:

import java.util.List;
import java.text.*;

public class SimpleTesting {
    public static void main(String[] args) {
        StringBuffer originalString =
           new StringBuffer("Simple Testing");
        System.out.println
           ("Original String: " + originalString);
        originalString.replace( 5 ,6 ,"y");
        System.out.println
           ("Modified String: " + originalString);
    }
}

산출:

Original String: Simple Testing
Modified String: Simply Testing

Java의 문자열에서 부분 문자열을 제거하는replaceAll()메소드

replace()메소드와 비슷한 또 다른 메소드는 Java String 클래스의replaceAll()메소드를 사용하는 것입니다.

문법은

String replaceAll(String regex, String replace)

정규 표현식은 정규 표현식의 패턴입니다.

replace는 기존 문자열을 대체 할 문자열입니다.

예제 코드:

import java.util.List;
import java.text.*;

public class SimpleTesting {
    public static void main(String[] args) {
        String originalstring =
            "This is Simple Testing Code";
        System.out.println
            ("Original String: " + originalstring);
        System.out.println
            ("Modified String: " + originalstring.replaceAll("Code", ""));
    }
}

산출:

Original String: This is Simple Testing Code
Modified String: This is Simple Testing 

replaceAll()메소드를 사용하는보다 강화 된 점은 정규식의 패턴을 사용하여 패턴과 일치하는 부분 문자열을 한 번에 제거하는 것입니다.

예제 코드:

import java.util.List;
import java.text.*;

public class SimpleTesting {
    public static void main(String[] args)  {
        String originalstring =
            "This Test is from Simple Testing Code to Test function ";
        System.out.println
            ("Original String: " + originalstring);
        System.out.println
            ("Modified String: " + originalstring.replaceAll("Tes.*?\\b", ""));
    }
}

산출:

Original String: This Test is from Simple Testing Code to Test function 
Modified String: This  is from Simple  Code to  function 
노트

replace()replaceAll()메소드는 모두 모든 발생을 대체합니다. 이들의 차이점은replaceAll()메소드는 정규 표현식 패턴을 사용한다는 것입니다.

관련 문장 - Java String

  • Java에서 문자열을 반전하는 방법
  • Java에서 16 진 문자열의 바이트 배열을 변환하는 방법