티스토리 뷰

BackEnd/JAVA

[JAVA] 정규표현식

best 2016. 1. 29. 17:39

정규표현식

 

  • 정규 표현식 문법

 

 식

기능 

설명 

 .

문자

 1개의 문자와 일치한다.

 \

이스케이프

 특수 문자 식에 문자 자체로 포함한다.

 |

선택 

 여러 식 중에서 하나를 선택한다. ex ) abc|adc 는 abc 와 adc 문자열 모두 포함한다.

 ^

부정 

 문자 클래스 안의 문자를 제외한 나머지를 선택한다. ex) [^a-Z]는 알파벳 소문자로 시작하지 않는 모든 문자

 []

문자 클래스 

 "[" 와 "]" 사이의 문자 중 하나를 선택한다. ex) [a-z] a부터 z까지 중 하나

 ()

하위식 

 여러 식을 하나로 묶을 수 있다. ex) abc|adc와 "a(b|d)c"는 같은 의미를 가진다.

 *

0회 이상 

 0개 이상의 문자를 포함한다.

 +

1회 이상 

 "a+b"는 "ab", "aab", "aaab"를 포함하지만 "b를 포함하지 않는다.

 ?

0또는 1회 

 "a?b"는 "b", "ab"를 포함한다.

 

 

 

  • 문자 클래스

 Vim

ASCII 

설명 

 

[A-Za-z0-9]

영숫자 

\w

[A-Za-z0-9_]

영숫자 + "_"

\W

[^A-Za-z0-9_]

낱말이 아닌 문자

\a

[A-Za-z]

알파벳 문자

\d

[0-9]

숫자

\_s (단순히 줄 끝에 추가)

\t\r\n\v\f]

공백문자

\x

[A-Fa-f0-9]

16진수

\s

[ \t]

공백과 탭

\u

[A-Z]

대문자

 

 

실습1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
     public void startProgram(){
        System.out.println("검색할 이름을 입력하세요.");
        searchName = input.next();
        if(checkScanner("^[가-힣a-zA-Z]*$", searchName)){ // 잘못입력했을 경우
        } //문자를 입력했는지 체크
        else{
            System.out.println(searchName) // 제대로 입력했을 경우 false이므로            
        }
 
    public boolean checkScanner( String checkScan, String whatString ) {
        if ( !whatString.matches(checkScan) ) {
            System.out.println("잘못입력했습니다.");
            return true;
        }
        else {
            return false;
        }
    }
   cs

 

- 출처 위키백과 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
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
글 보관함