String.contains()
String.contains(String substring)
주어진 문자열에 찾고자 하는 특정 부분 문자열(substring)이 있으면 true, 없으면 false를 반환한다
e.g. String.replaceAll() 메서드와 함께 사용해 문자열에서 허용하지 않을 문자열을 다른 문자열로 바꾸기
String str = "이 메서드는! 문자열에서! 일치하는 부분 문자열을! 찾는 메서드! contains!";
String[] notAllowed = new String[]{"메서드", "~", "문자열", " "};
String[] allowed = new String[]{"method", "!", "String", "+"};
for(int i=0; i<notAllowed.length; i++){
if(str.contains(notAllowed[i])){
str = str.replaceAll(notAllowed[i], allowed[i]);
}
}
System.out.println(str);
출력
이+method는!+String에서!+일치하는+부분+String을!+찾는+method!+contains!
허용하지 않을 부분 문자열(단어) 배열(String[] notAllowed)과 허용하지 않을 부분 문자열을 대체할 부분 문자열 배열(String[] allowed)을 미리 배열로 저장해둔다.
contains() 메서드를 사용해 기존 문자열에서 notAllowed 배열의 요소가 있는지 검사하고, 있다면 replaceAll() 메서드를 사용해 allowed 배열의 요소로 바꿔준다.
만약 notAllowed 요소와 일치하는 문자열 모두가 아닌 처음으로 등장하는 문자열만을 바꿔주고 싶다면 replaceAll() 대신 replaceFirst() 메서드를 사용할 수 있다.
*replaceAll(), replaceFirst(), replace() 메서드
ref.
'p-languages > java' 카테고리의 다른 글
java/ 내부 클래스의 종류와 내부 클래스를 사용함으로써 얻는 장점 (0) | 2022.05.23 |
---|---|
java/ Stream 중간 처리 메서드 - filtering, mapping, sorting, looping (0) | 2022.05.23 |
java/ replace(), replaceAll(), replaceFirst() : 문자열에서 문자 또는 부분 문자열을 교체하는 메서드 (0) | 2022.05.15 |
java/ copyOf(), copyOfRange(), arraycopy() : 배열을 복사하는 메서드 (0) | 2022.05.15 |
java/ 문자열이 빈 문자열인지, +공백만 갖는지 확인하는 메서드 (0) | 2022.05.14 |