본문 바로가기

SW Engineering/Java

[JAVA] String Class의 replace와 replaceAll의 차이점 / 특수문자 처리

 

 

image

 

String replace(char oldChar, char newChar)

의 경우 : 단일 문자 치환

String replace(CharSequence target, CharSequence replacement)

의 경우 : 문자열 치환

String replaceAll(String regex, String replacement)

의 경우 : 정규식 구조에 따른 문자열 치환.

* replaceAll의 경우, 정규식 표현상 사용되는 지정어가 포함된 경우, 오류가 날수 있기에 아래 규칙을 따라야 한다.

* ⇒ [*]
+ ⇒ [+]
$ ⇒ [$]
| ⇒ [|]
? ⇒ [?]

( ⇒ \\(
) ⇒ \\)
{ ⇒ \\{
} ⇒ \\}
^ ⇒ \\^
[ ⇒ \\[
] ⇒ \\]

" ⇒ \"

그 외 추가 제한사항이 있을 여지가 있음.