티스토리 뷰
Regular Expression & Pattern Class
정규 표현식 작성 방법
다음은 02-123-4567 또는 010-1234-4321 과 같은 전화번호를 위한 정규 표현식입니다.
1 | (02|010)-\d{3,4}-\d{4} | cs |
다음은 zhfldi4@naver.com과 같은 이메일을 위한 정규 표현식입니다.
1 2 | \w+@\w+\.\w+(\.\w+)? | cs |
Pattern 클래스
정규 표현식으로 문자열을 검증하는 방법을 알아보도록 합시다. 문자열을 정규 표현식으로 검증하는 기능은 java.util.regex.Pattern 클래스의 정적 메소드인 matches() 메소드가 제공합니다.
1 2 | boolean result = Pattern.matches("regular Expression", "String"); | cs |
첫 번째 파라미터는 정규 표현식이고, 두 번째 파라미터는 검증할 문자열입니다.
다음 예제는 전화번호와 이메일을 검증하는 코드를 보여줍니다.
* PatternExam.java
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 32 33 | package api; import java.util.regex.Pattern; public class PatternExam { public static void main(String[] args) { String regExp = "(02|010)-\\d{3,4}-\\d{4}"; // Regular Expression String data = "010-1234-4321"; boolean result = Pattern.matches(regExp, data); if (result) System.out.println("정규식 일치"); else System.out.println("정규식 불일치"); regExp = "\\w+@\\w+\\.\\w+(\\.\\w+)?"; data = "ios10@apple.co.m."; result = Pattern.matches(regExp, data); if (result) System.out.println("정규식 일치"); else System.out.println("정규식 불일치"); } } | cs |
출처: http://palpit.tistory.com/901 [palpit's log-b]
'PL > Java' 카테고리의 다른 글
12. 멀티 스레드 (0) | 2018.10.16 |
---|---|
11-4. StringTokenizer, StringBuffer, StringBuilder 클래스 정리 (0) | 2018.09.07 |
11-3. String 클래스 (0) | 2018.09.07 |
11-2.System,Class 클래스, Reflection 정리 (0) | 2018.09.07 |
11-1. 자바 기본 API 클래스(lang,util패키지,Objects 클래스) 정리 (0) | 2018.09.07 |