Tuesday, October 03, 2006
Java/자바] 문자열 치환, 문자 바꾸기, 모두 바꾸기; String Replace All
C언어와는 달리, 자바에서의 문자열 바꾸기 Substitution 는 아주 쉽습니다.
여기서 소개하는 자바의 문자열 치환 메소드(함수)들은, "Search and Replace" 또는 "Find and Replace" 개념입니다. 텍스트에디터의 문자열 바꾸기처럼, 지정한 문자열을 기존의 문자열 속에서 자동으로 찾아서 바꿉니다. 대부분의 경우에는 이것을 사용하면 됩니다.
파일명: Foo.java
public String replace(CharSequence target, CharSequence replacement)
이것은 일치되는 모든 문자열을 바꿉니다. 원본 문자열에 "숭아"가 2개 있는데 모두 "맹구"로 치환되었습니다. (CharSequence 가 아닌 String 도 사용 가능합니다.)
public String replaceFirst(String regex, String replacement)
이것은 첫번째로 일치되는 문자열만 바꿉니다. 첫 번째 "숭아"만 "맹구"로 치환되었습니다. 문자열 대신에, 정규식(regex)을 지정할 수도 있습니다.
public String replaceAll(String regex, String replacement)
맨 처음의 replace() 와 같이, 일치되는 모든 문자열을 바꿉니다. replace()와 다른 점은, 정규식/정규표현식(Regular Expressions; Regex)을 사용할 수 있다는 것입니다.
▶▶ Java/자바/정규식] 대소문자 구분 없이 문자열 바꾸기/치환; Replace String Ignore Case Regex
▶▶ Java/자바] 백슬래쉬(\; ₩) 문자 바꾸기, 문자열/정규식에 백슬래시 자체 표현 방법; Backslash
▶▶ Java/자바] 문자열 삭제, 일부 문자열만 지우기; Remove, Delete String
▶▶ Java/자바] 문자열 속에서 문자열 검색, 문자 찾기; Find Sub-String in a String
여기서 소개하는 자바의 문자열 치환 메소드(함수)들은, "Search and Replace" 또는 "Find and Replace" 개념입니다. 텍스트에디터의 문자열 바꾸기처럼, 지정한 문자열을 기존의 문자열 속에서 자동으로 찾아서 바꿉니다. 대부분의 경우에는 이것을 사용하면 됩니다.
문자열 치환(Replace) 예제
파일명: Foo.java
public class Foo {
public static void main(String[] args) {
String s = "봉숭아 학당! 봉숭아 학당!"; // 원본 문자열
String s2;
System.out.println("원본: " + s);
System.out.println(); // 줄바꿈
// (1)
s2 = s.replace("숭아", "맹구");
System.out.println("치환(1): " + s2); // 출력 결과: 봉맹구 학당! 봉맹구 학당!
// (2)
s2 = s.replaceFirst("숭아", "맹구");
System.out.println("치환(2): " + s2); // 출력 결과: 봉맹구 학당! 봉숭아 학당!
// (3)
s2 = s.replaceAll("숭아", "맹구");
System.out.println("치환(3): " + s2); // 출력 결과: 봉맹구 학당! 봉맹구 학당!
}
}
public static void main(String[] args) {
String s = "봉숭아 학당! 봉숭아 학당!"; // 원본 문자열
String s2;
System.out.println("원본: " + s);
System.out.println(); // 줄바꿈
// (1)
s2 = s.replace("숭아", "맹구");
System.out.println("치환(1): " + s2); // 출력 결과: 봉맹구 학당! 봉맹구 학당!
// (2)
s2 = s.replaceFirst("숭아", "맹구");
System.out.println("치환(2): " + s2); // 출력 결과: 봉맹구 학당! 봉숭아 학당!
// (3)
s2 = s.replaceAll("숭아", "맹구");
System.out.println("치환(3): " + s2); // 출력 결과: 봉맹구 학당! 봉맹구 학당!
}
}
public String replace(CharSequence target, CharSequence replacement)
이것은 일치되는 모든 문자열을 바꿉니다. 원본 문자열에 "숭아"가 2개 있는데 모두 "맹구"로 치환되었습니다. (CharSequence 가 아닌 String 도 사용 가능합니다.)
public String replaceFirst(String regex, String replacement)
이것은 첫번째로 일치되는 문자열만 바꿉니다. 첫 번째 "숭아"만 "맹구"로 치환되었습니다. 문자열 대신에, 정규식(regex)을 지정할 수도 있습니다.
public String replaceAll(String regex, String replacement)
맨 처음의 replace() 와 같이, 일치되는 모든 문자열을 바꿉니다. replace()와 다른 점은, 정규식/정규표현식(Regular Expressions; Regex)을 사용할 수 있다는 것입니다.
▶▶ Java/자바/정규식] 대소문자 구분 없이 문자열 바꾸기/치환; Replace String Ignore Case Regex
▶▶ Java/자바] 백슬래쉬(\; ₩) 문자 바꾸기, 문자열/정규식에 백슬래시 자체 표현 방법; Backslash
▶▶ Java/자바] 문자열 삭제, 일부 문자열만 지우기; Remove, Delete String
▶▶ Java/자바] 문자열 속에서 문자열 검색, 문자 찾기; Find Sub-String in a String
tag: java
자바 | Java
감사합니다!
<< Home