4.2.3 찾기와 바꾸기
문자열 문제를 풀다 보면 문자열에서 어떤 특정한 부분을 찾거나 다른 문자열로 치환해야 할 때가 많습니다. 자바는 이런 작업도 내장 라이브러리에서 지원합니다. 앞서 살펴본 대문자나 소문자로 변환하는 toUpperCase()와 toLowerCase()도 이렇게 원본 문자열을 특정 규칙에 따라 변환하는 메서드입니다. 이번에는 이렇게 문자열 내에서 특정 부분을 찾는 메서드와 바꾸는 메서드를 알아봅시다.
▼ 표 4-7 포함 여부를 검사하는 메서드
메서드 |
반환형 |
내용 |
contains(CharSequence s) |
boolean |
전달받은 문자열이 원본 문자열에 있는지 검사 |
startsWith(String prefix) |
boolean |
원본 문자열이 전달받은 문자열로 시작하는지 검사 |
endsWith(String suffix) |
boolean |
원본 문자열이 전달받은 문자열로 끝나는지 검사 |
indexOf(String str) |
int |
전달받은 문자열이 원본 문자열에서 몇 번째 인덱스에 있는지 검사 |
▼ 표 4-8 문자열 치환 메서드
메서드 |
반환형 |
내용 |
replace(char oldChar, char newChar) |
String |
원본 문자열의 oldChar 문자들을 newChar 문자로 치환한 문자열을 반환 |
replace(CharSequence target, CharSequence replacement) |
String |
원본 문자열에서 등장하는 target 문자열을 replacement 문자열로 치환해서 반환하는 메서드 |
잠깐만요
CharSequence는 문자열을 나타내는 인터페이스입니다. String 클래스도 CharSequence 인터페이스를 구현하고 있기 때문에 일반적인 문자열과 같다고 생각해도 무방합니다.