본문 바로가기

Java

[Java] String 클래스의 replace() & replaceAll() 메서드

728x90

1.   replace( "기존 문자"  ,  "바꿀 문자" )  

String str = "AAAbbCCCddAAAEEE";
str = str.replace("AAA", "aaa");
System.out.println(str);  //  aaabbCCCddaaaEEE

 

2.   replaceAll( "기존 문자" , "바꿀 문자" )

String str = "AAAbbCCCddAAAEEE";
str = str.replaceAll("AAA", "aaa");
System.out.println(str);  //  aaabbCCCddaaaEEE

 

replace( ) replaceAll( ) 둘 다 기능은 동일하다. String 문자열에서 기존 문자를 바꿔준다.

 

하지만 차이가 있다. 

 

replace( ) 는 '특정 문자열'을 '새로운 문자열'로 바꾸기 위한 메서드이고, replaceAll( ) 메서드는 '정규식'에 포함되는 문자열을 '다른 문자열'로 바꿔주는 기능을 수행한다.

즉, replace( )특정 문자열을 대체할 때 (ex: 사람 이름에서 "철수"를 전부 "영희"로 변경),

reaplaceAll( )특정 패턴의 문자열을 대체할 때 (ex. 전화번호에서 숫자를 전부 제거( = 공백으로 대체) 적합하다.