문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
|
프로그램:java:ㄴhomework:book_source:ch12 [2022/01/05 11:40] clayeryan@gmail.com [java.util.regex 패키지] |
프로그램:java:ㄴhomework:book_source:ch12 [2025/06/27 16:07] (현재) |
||
|---|---|---|---|
| 줄 1: | 줄 1: | ||
| - | ====== | + | ====== |
| ===== java.lang 패키지 ===== | ===== java.lang 패키지 ===== | ||
| 줄 1308: | 줄 1308: | ||
| </ | </ | ||
| - | - Pattern 클래스의 static 메서드 copile에 정규표현식을 매개변수로 넣고 객체 생성 Pattern p = Pattern.copile(" | + | |1. Pattern 클래스의 static 메서드 copile에 정규표현식을 매개변수로 넣고 객체 생성 Pattern p = Pattern.copile(" |
| - | | + | |2. Matcher 클래스를 이용해 생성한 패턴 책체의 matcher() 메서드의 매개변수로 비교할 대상 문자열을 넣어 Matcher 객체 생성| |
| + | | | ||
| Matcher m; | Matcher m; | ||
| - | m= p.matcher(" | + | m= p.matcher(" |
| - | -Matcher 객체에 amtchers() 메서드를 호출해 매칭이 되었는지(true) 안 되었는지(false) 판단 if (m.matchers()) {...} | + | | |
| + | |3. Matcher 객체에 amtchers() 메서드를 호출해 매칭이 되었는지(true) 안 되었는지(false) 판단 if (m.matchers()) {...}| | ||
| + | |||
| + | |||
| + | |||
| ==== 정규 표현식에 사용되는 문자 ==== | ==== 정규 표현식에 사용되는 문자 ==== | ||
| ==== 정규 표현식으로 문자열검증 ==== | ==== 정규 표현식으로 문자열검증 ==== | ||
| + | **Pattern 클래스의 static 메서드 matches() 메서드 사용** | ||
| + | <code java> | ||
| + | package chapter12; | ||
| + | import java.util.regex.Matcher; | ||
| + | import java.util.regex.Pattern; | ||
| + | public class ReEx2 { | ||
| + | public static void main(String[] args) { | ||
| + | |||
| + | String[] patterns = {" | ||
| + | " | ||
| + | String[] datas = {" | ||
| + | |||
| + | for(String d : datas) { | ||
| + | System.out.print(d+" | ||
| + | for(String p : patterns) { | ||
| + | Pattern pattern = Pattern.compile(p); | ||
| + | Matcher m = pattern.matcher(d); | ||
| + | if(m.matches()) { | ||
| + | System.out.print(p+", | ||
| + | } | ||
| + | } | ||
| + | System.out.println(); | ||
| + | } | ||
| + | } | ||
| + | |||
| + | } | ||
| + | |||
| + | </ | ||
| + | |||
| + | <code java> | ||
| + | package chapter12; | ||
| + | |||
| + | import java.util.regex.Matcher; | ||
| + | import java.util.regex.Pattern; | ||
| + | |||
| + | public class ReEx3 { | ||
| + | |||
| + | public static void main(String[] args) { | ||
| + | |||
| + | String source = " | ||
| + | + " | ||
| + | String telpattern = " | ||
| + | String emailpattern = " | ||
| + | String accountpattern = " | ||
| + | |||
| + | Pattern p = Pattern.compile(telpattern); | ||
| + | Matcher m = p.matcher(source); | ||
| + | |||
| + | System.out.println(" | ||
| + | while(m.find()) { // 지정된 패턴 맞는 문자열을 검색 | ||
| + | System.out.println(m.group() + " : " | ||
| + | + m.group(1) + "," | ||
| + | } | ||
| + | |||
| + | p = Pattern.compile(emailpattern); | ||
| + | m = p.matcher(source); | ||
| + | System.out.println(" | ||
| + | while(m.find()) { // 지정된 패턴 맞는 문자열을 검색 | ||
| + | System.out.println(m.group() + " : " | ||
| + | + m.group(1) + "," | ||
| + | } | ||
| + | |||
| + | p = Pattern.compile(accountpattern); | ||
| + | m = p.matcher(source); | ||
| + | System.out.println(" | ||
| + | while(m.find()) { // 지정된 패턴 맞는 문자열을 검색 | ||
| + | System.out.println(m.group() + " : " | ||
| + | + m.group(1) + "," | ||
| + | } | ||
| + | |||
| + | } | ||
| + | |||
| + | } | ||
| + | |||
| + | </ | ||
별도로 명시하지 않을 경우, 이 위키의 내용은 다음 라이선스에 따라 사용할 수 있습니다: CC Attribution-Share Alike 4.0 International