반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Array
- HashMap
- input
- replace
- 자바
- ArrayList
- 배열
- IntelliJ
- 인텔리제이
- json
- 이탈리아
- date
- Button
- table
- CSS
- 이클립스
- map
- string
- Java
- 문자열
- javascript
- vscode
- Visual Studio Code
- list
- Eclipse
- html
- CMD
- 자바스크립트
- 정규식
- js
Archives
- Today
- Total
어제 오늘 내일
[Java Matcher] replaceAll() - 정규식으로 문자열 치환하기 본문
문자열에서 특정 패턴을 다른 문자열로 치환해야 할 때는 단순한 String.replace()
만으로는 부족할 때가 많습니다. 정규표현식을 활용하면 훨씬 더 강력하게 문자열을 변환할 수 있으며, 이때 Matcher.replaceAll()
메소드를 사용합니다.
1. replaceAll()
메소드 개요
- 메소드 시그니처
public String replaceAll(String replacement)
- 현재
Matcher
가 가진 정규표현식과 일치하는 모든 부분 문자열을replacement
로 교체합니다. - 치환 시
$1
,$2
와 같이 그룹을 활용할 수도 있습니다.
2. 기본 사용 예제
import java.util.regex.*;
public class MatcherReplaceAllExample {
public static void main(String[] args) {
String input = "cat, dog, cat, bird";
Pattern pattern = Pattern.compile("cat");
Matcher matcher = pattern.matcher(input);
String result = matcher.replaceAll("tiger");
System.out.println(result);
}
}
실행 결과
tiger, dog, tiger, bird
입력 문자열에서 "cat"
을 모두 "tiger"
로 변환했습니다.
3. 그룹을 활용한 치환 예제
import java.util.regex.*;
public class MatcherReplaceGroupExample {
public static void main(String[] args) {
String input = "2025-09-14";
Pattern pattern = Pattern.compile("(\\d{4})-(\\d{2})-(\\d{2})");
Matcher matcher = pattern.matcher(input);
String result = matcher.replaceAll("$3/$2/$1");
System.out.println(result);
}
}
실행 결과
14/09/2025
정규식 그룹을 활용해 "YYYY-MM-DD"
형식을 "DD/MM/YYYY"
형식으로 변환했습니다.
4. 활용 사례
- 문자열 내 특정 단어 또는 패턴 일괄 치환
- 날짜, 전화번호, 우편번호 등의 포맷 변환
- 민감 정보(이메일, 주민번호 등) 마스킹 처리
정리
Matcher.replaceAll()
메소드는 정규표현식 기반 문자열 치환을 가능하게 합니다. 단순 단어 교체부터 복잡한 포맷 변환까지 폭넓게 활용할 수 있으며, 그룹을 이용하면 더욱 정교한 변환이 가능합니다.
반응형
'IT > Java' 카테고리의 다른 글
[Java StringTokenizer] 주요 메소드 정리와 활용 예제 (0) | 2025.10.06 |
---|---|
[Java Scanner] 주요 메소드 정리와 활용 예제 (0) | 2025.10.06 |
[Java Matcher] group() - 매칭된 문자열 추출하기 (0) | 2025.10.05 |
[Java Matcher] find() - 문자열에서 패턴 찾기 (0) | 2025.10.04 |
[Java Matcher] matches() - 문자열 전체가 패턴과 일치하는지 확인하기 (0) | 2025.10.04 |
Comments