JAVA
[JAVA] - 문자열 치환 메서드 (replace, replaceAll, replaceFirst)
nam_ji
2024. 7. 18. 16:00
자바 문자열 치환 메서드
1. replace
- replace는 선택한 문자열을 변경할 문자열로 바꿔줍니다. 단, 하나의 문자열만 바꿀 수 있습니다.
- 문자열.replace("선택 문자열", "병경 문자열");
package stringClass;
public class ReplaceExample {
public static void main(String[] args) {
System.out.println("\n------------------------Replace 메서드------------------------");
ReplaceEx replaceEx = new ReplaceEx();
replaceEx.replaceEx();
}
}
class ReplaceEx {
public void replaceEx() {
String replaceTest = "!자바, 문자열, 치환, 테스트!";
System.out.println("원래 문자열 : " + replaceTest);
System.out.println(",(쉼표)를 느낌표로 치환");
System.out.println(replaceTest.replace(",", "!"));
}
}
/*
출력
------------------------Replace 메서드------------------------
원래 문자열 : !자바, 문자열, 치환, 테스트!
,(쉼표)를 느낌표로 치환
!자바! 문자열! 치환! 테스트!
*/
2. replaceAll
- replaceAll은 정규표현식을 사용하여 원하는 다양한 문자열을 변경할 수 있습니다.
(정규표현식이 아니어도 치환은 가능합니다. 단, 떨어져 있는 문자열은 치환할 수 없습니다.) - replaceAll은 정규식을 사용하기 때문에 선택할 문자열이 .(마침표라면) 모든 문자열이 변경되게 됩니다.
(정규표현식에서 .(마침표)는 모두를 뜻하기 때문입니다.)
그렇기 때문에 replace와 replaceAll을 적절하게 잘 사용해야 합니다. - 문자열.replaceAll("정규표현식", "병경 문자열");
package stringClass;
public class ReplaceExample {
public static void main(String[] args) {
System.out.println("\n------------------------ReplaceAll 메서드------------------------");
ReplaceAllEx replaceAllEx = new ReplaceAllEx();
replaceAllEx.replaceAllEx();
}
}
class ReplaceAllEx {
public void replaceAllEx() {
String replaceAllTest = "!자바, 문자열, 치환, 테스트!";
System.out.println("원래 문자열 : " + replaceAllTest);
System.out.println(",(쉼표)와 느낌표를 물음표로 치환");
System.out.println(replaceAllTest.replaceAll("[,!]", "?"));
}
}
/*
출력
------------------------ReplaceAll 메서드------------------------
원래 문자열 : !자바, 문자열, 치환, 테스트!
,(쉼표)와 느낌표를 물음표로 치환
?자바? 문자열? 치환? 테스트?
*/
3. replaceFirst
- 가장 먼저 나온 선택한 문자열을 병경할 문자열로 치환해줍니다.
- 문자열.replaceFirst("선택 문자열", "병경 문자열");
package stringClass;
public class ReplaceExample {
System.out.println("\n------------------------ReplaceFirst 메서드------------------------");
ReplaceFirstEx replaceFirstEx = new ReplaceFirstEx();
replaceFirstEx.replaceFirstEx();
}
}
class ReplaceFirstEx {
public void replaceFirstEx() {
String replaceFirstTest = "!자바, 문자열, 치환, 테스트!";
System.out.println("원래 문자열 : " + replaceFirstTest);
System.out.println("정규 표현식 중, 처음 나오는 ,(쉼표)나 느낌표를 물음표로 치환");
System.out.println(replaceFirstTest.replaceFirst(",", "?"));
}
}
/*
출력
------------------------ReplaceFirst 메서드------------------------
원래 문자열 : !자바, 문자열, 치환, 테스트!
정규 표현식 중, 처음 나오는 ,(쉼표)나 느낌표를 물음표로 치환
!자바? 문자열, 치환, 테스트!
*/
전체 코드
더보기
package stringClass;
public class ReplaceExample {
public static void main(String[] args) {
System.out.println("\n------------------------Replace 메서드------------------------");
ReplaceEx replaceEx = new ReplaceEx();
replaceEx.replaceEx();
System.out.println("\n------------------------ReplaceAll 메서드------------------------");
ReplaceAllEx replaceAllEx = new ReplaceAllEx();
replaceAllEx.replaceAllEx();
System.out.println("\n------------------------ReplaceFirst 메서드------------------------");
ReplaceFirstEx replaceFirstEx = new ReplaceFirstEx();
replaceFirstEx.replaceFirstEx();
}
}
class ReplaceEx {
public void replaceEx() {
String replaceTest = "!자바, 문자열, 치환, 테스트!";
System.out.println("원래 문자열 : " + replaceTest);
System.out.println(",(쉼표)를 느낌표로 치환");
System.out.println(replaceTest.replace(",", "!"));
}
}
class ReplaceAllEx {
public void replaceAllEx() {
String replaceAllTest = "!자바, 문자열, 치환, 테스트!";
System.out.println("원래 문자열 : " + replaceAllTest);
System.out.println(",(쉼표)와 느낌표를 물음표로 치환");
System.out.println(replaceAllTest.replaceAll("[,!]", "?"));
}
}
class ReplaceFirstEx {
public void replaceFirstEx() {
String replaceFirstTest = "!자바, 문자열, 치환, 테스트!";
System.out.println("원래 문자열 : " + replaceFirstTest);
System.out.println("정규 표현식 중, 처음 나오는 ,(쉼표)나 느낌표를 물음표로 치환");
System.out.println(replaceFirstTest.replaceFirst(",", "?"));
}
}
/*
출력
------------------------Replace 메서드------------------------
원래 문자열 : !자바, 문자열, 치환, 테스트!
,(쉼표)를 느낌표로 치환
!자바! 문자열! 치환! 테스트!
------------------------ReplaceAll 메서드------------------------
원래 문자열 : !자바, 문자열, 치환, 테스트!
,(쉼표)와 느낌표를 물음표로 치환
?자바? 문자열? 치환? 테스트?
------------------------ReplaceFirst 메서드------------------------
원래 문자열 : !자바, 문자열, 치환, 테스트!
정규 표현식 중, 처음 나오는 ,(쉼표)나 느낌표를 물음표로 치환
!자바? 문자열, 치환, 테스트!
*/