String 변수나 배열 같은 곳에서 사용
자신이 바꾸고싶은 문자로 문자열을 치환시켜주는 기능
메서드
String replace(char old, char new)
- 문자열 중의 문자(old)를 새로운 문자로(nw)로 바꾼 문자열을 반환
String replace(CharSequence old, CharSeqeunce nw)
- 문자열 중의 문자열(old)를 새로운 문자열(nw)로 모두 바꾼 문자열을 반환
String replaceALL(String regex, String replacement)
- 문자열 중에서 지정딘 문자열(regex)과 일치하는 것을 새로운 문자열(replacement)로 모두 변경
예제
String replace(char old, char new) 예제
String s = "Hello";
String s1 = s.replace('H', 'C');
//s1 = "Cello"
String replace(CharSequence old, CharSeqeunce nw) 예제
String s = "Hello";
String s1 = s.replace("ll", "bb");
//s1 = "Hebbo"
String replaceALL(String regex, String replace) 예제
String s = "Hello";
String s1 = s.replace("ll", "bb");
//s1 = "Hebbo"
2번째 예제와 다른 점이 무엇일까?
→ 첫번째 인자로 CharSequence를 받느냐 regex를 받느냐의 차이
regex
- 정규표현식
- 특정한 규칙을 가진 문자열의 집합을 표현하는데 사용
- 문법기타 등등…
- ^ : 문자열의 시작
- $ : 문자열의 끝
- . : 임의의 한 문자
- * : 문자가 0번 이상 발생
- + : 문자가 1번 이상 발생
- ? : 문자가 0번 혹은 1번 발생
- [] : 문자의 집합 범위
- {} : 횟수 또는 범위를 의미
replace() vs replaceALL() 차이점
String allTest = "개발자로. 향하는. Moly";
a = a.replace(".", "/");
//결과값 : 개발자로/ 향하는/ Moly
a = a.replaceAll(".", "/");
//결과값 : ///////////////
- replaceALL에서는 .(마침표)를 정규표현식으로 표현
- .(마침표)이 정규식에서 모든 문자를 의미하기 때문에
- 위와 같이 나타남
'JAVA 🎻' 카테고리의 다른 글
[JAVA] Reactive Streams, Back Pressure란? (0) | 2023.08.05 |
---|---|
[JAVA] JDBC란? (0) | 2023.06.04 |
[JAVA] 스트림 활용하기 (0) | 2023.03.04 |
[JAVA] Jsoup을 이용한 크롤링 (0) | 2023.02.21 |
[JAVA] 디폴트 메서드 (0) | 2023.02.15 |