JDK 1.4 이후에는 문자열 개체가 공용 String replacementAll(String regex, String replacement) 메서드를 호출하여 문자열을 반환합니다. 이 문자열은 매개변수 regex로 지정된 정규식과 일치하는 현재 문자열의 하위 문자열입니다. 교체로 지정된 문자열입니다. 예를 들면 다음과 같습니다.
Strings=123hel1o456bird.replaceAll([a-zA-Z]+, 안녕하세요);
그러면 s는 123hello456bird의 모든 영어 하위 문자열을 hello로 대체하여 얻은 문자열입니다. 즉, s는 123hello456hello입니다.
참고 : 현재 문자열에 대해 replacementAll() 메서드를 호출하면 문자열이 반환되지만 현재 문자열은 변경되지 않습니다.
JDK 1.4 이후에는 String 클래스가 실용적인 메소드 public String[] Split(String regex) 를 제공합니다. 문자열에서 이 메소드를 호출할 때 매개변수에 지정된 정규식 regex가 해당 단어를 분해하는 구분 기호로 사용됩니다. 단어는 분해됩니다. 결과 단어는 문자열 배열에 저장됩니다. 예를 들어 문자열 str의 경우:
Stringstr=1949년 10월 1일은 중화인민공화국이 건국된 날입니다.
숫자로만 구성된 단어를 분해하려면 숫자가 아닌 문자열을 구분 기호로 사용해야 합니다. 따라서 정규식 String regex=\D+를 구분 기호로 사용하여 str의 단어를 구분할 수 있습니다.
StringdigitWord[]=str.split(regex);
그러면 digitWord[0], digitWord[1], digitWord[2]는 각각 1949, 10, 1입니다.