1. Java 정규표현식의 기초
- 정규표현식(Regular Expression)은 문자열을 처리하기 위한 강력한 도구입니다.
- 정규 표현식은 특정한 규칙을 가진 문자열의 집합을 표현하기 위해 사용되는 형식 언어입니다.
- 주로 문자열 검색, 유효성 검사, 데이터 추출 등에 활용됩니다.
- Java에서는
java.util.regex패키지를 통해 정규표현식 기능을 제공하며, 주로Pattern과Matcher클래스를 사용합니다.
1.1 Pattern과 Matcher의 관계
정보
Pattern 객체는 불변(immutable)이며 스레드 안전합니다. 반면 Matcher 객체는 스레드 안전하지 않습니다.
// 기본적인 사용 패턴
Pattern pattern = Pattern.compile("a*b");
Matcher matcher = pattern.matcher("aaaaab");
boolean matches = matcher.matches();
// 일회성 매칭을 위한 간편 메소드
boolean isMatch = Pattern.matches("a*b", "aaaaab");
- Pattern 클래스는 정규 표현식 패턴을 컴파일하고 생성하는 역할을 합니다.
- Matcher 클래스는 패턴을 입력 문자열에 적용하여 매칭 작업을 수행합니다.
2. 정규표현식 문법 상세
2.1 문자 표현
백슬래시 처리
Java 문자열에서 백슬래시를 표현하려면 두 번 이스케이프해야 합니다.
예: 실제 정규식 \d를 Java에서는 \\d로 작성
// 일반 문자
x // 문자 x 자체
\\ // 백슬래시
\t // 탭
\n // 줄바꿈
\r // 캐리지 리턴
\f // 폼피드