정규 표현식(Regular Expression)
- 특정 패턴을 갖는 문자열을 찾기 위한 표현식
1.'.'
- 임의의 한문자
ex).bc->abc,bbc,cbc,dbc
t.t->tat.tbt.tct
2.'*'
- 바로 앞의 표현에 대한출현 휫수가 0~무한대
ex)a*b->b.ab.aab.aaab.aaaab
3.'+'
- 바로앞의 표현에 대한 출현 휫수가 1~무한대
ex)a+b->ab,aab,aaab,aaaab
4.'?'
- 바로앞의 표현에 대한 출현 횟수가 0~1
ex)a?b->b,ab
홍?길동 -> 길동, 홍길동
5.
- 바로앞의 표현에 대한 출현 횟수가 1
ex)ab
6.'^'
- 바로뒤의 표현으로 시작
ex)^The ->TheDKJF;JLAJDLFKJADLJKF;L
^a?bc ->bcakdfjlajldjflajdl ,abcdkjakdjlajldkjflad
^.e ->aaldkjfl;akjd;lfeakldjflkajdlfj
7.'$'
- 바로앞의 표현으로 종료
ex)입니다$ ->laa;kldjfkjad;l 입니다.
입니다\.$
입니까\?$ -> dlkajfljaldjfl j입니까?
8. [구성요소]
- choice
ex)[abcdefg] - 문자중 1개 선택 : a,b.c,d,e,f,g
[0123456789] ->//숫자중 1개 선택
(a|b|c|d|e|f|g)
9. {}
- 출현횟수
ex)a?b->a{0,1}b -> b.ab
a{2,} -> 2~무한대
a{2} -> 2(고정) ->aa
ex)전화번호 정규식 010-9999-0000
0[0123456789][0123456789]?- [0123456789][0123456789][0123456789][0123456789][0123456789][0123456789]?-[0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789]
//000,011,022
0[0123456789]{1,2}-[0123456789]{3,4}-[0123456789]{4}
0[0-9]{1,2}-[0-9]{3,4}-[0.9]{4}
0\d{1,2}-\d{3,4}-\d{4}
주민번호 정규식 \d{6}-\d{7}
[abcdef] ->[a-f]
[012345] ->[0-5]
[a-z] : 소문자
[A-Z] : 대문자
[a-zA-Z] :영문자
[abcde//xyzABCDEF...XYZ]
[가~힣] :완성형 한글
박씨성 이름
박[가~힣]{1,2} :
10. ()
- 그룹화
- (ab)+ " abababababab
11[^abc]
- 제외
-[0-9]{2,5} : 숫자 2자리~5자리
-[^0-9]{2,5} : 숫자가 아닌 문자 2자리~5자리
^abc -abc를 속한것을 찾아라~
12.
\w ->모든 영문자와 숫자
\W ->모든 영문자와 숫자를 제외한 나머지 문자
\s -> 공백문자
\S -> 공백문자가 아닌 나머지 문자
\d->숫자
\D->숫자가 아닌 나머지 문자
-자바,C#에서도 사용
'JAVA' 카테고리의 다른 글
JSP에서 HTML 생성하기 (0) | 2012.07.29 |
---|---|
StringTokenizer, FileWriter (3) | 2012.07.29 |
한글문제 (0) | 2012.07.29 |
JavaScript 키코드 (0) | 2012.07.29 |
JDK 설치 (0) | 2012.07.29 |