티스토리 뷰

Language/Java

[Java]정규표현식

out of coding 2015. 1. 6. 18:03

자바 뿐만 아니라, 

어느 모든 프로그래밍 언어나, 텍스트편집기등에서 정규 표현식을 사용한다.


정규표현식이란 사전적인 의미로는 특정한 규칙을 가진 문자열의 집합을 표현하는데 사용하는 형식 언어를 의미한다.


자주사용하는것으로 정리를 하도록 하겠음.


문자

설명

예제

\

특수문자를 의미

특수문자의 사용을 제외

\b

\*

^

문자열의 시작을 의미

[]의 안에서는 not의 의미

/^A/g -> A aaa

/[^A]/g -> A aaa , an A 처럼 A가 아닌

$

문자열의 마지막을 의미

/t$/ -> eat , GREAT

*

0번 이상 반복

/ab*d/g -> ad , abd , abdcdeabbbdedb

+

1번이상 반복 ( ={1,} )

/ab+d/g -> ad , abd, abdcdeabbbbd

?

0번이나 1

/e?le?/g -> angel, angle

.

new line을 제외한 모든 글자

/.n/g -> nay, an apple on the tree

(x)

x를 체크하고 체크한 값을 변수로 저장

/(f..) (b..)/ -> foo bar , 1th foo 2nd bar

(?:x)

x를 체크하고 체크한 값을 변수로 저장하지 않음

/(?:f..) (b..)/ -> foo bar , 1th bar

x|y

x또는 y

/green|red/ -> green apple , yellow apple

x(?=y)

x후에 y가 나오고, x부분만 매칭되는 부분으로 간주

/blash(?=soft|hard)/ -> blahsoft, blahhard

x(?!y)

x가 나오고 그 뒤에 y가 있으면 안 됨

/blah(?!hard)/ -> blahsoft , blahhard

{n}

앞에 지정한 것이 n

/.{3}/ -> ab , abc, abcd

{n,}

앞에 지정한 것이 n개 이상

/.{3,}/ -> ab , abc, abcd

{n,m}

앞에 지정한 것이 n-m

/{3,5}/ -> ab, abc, abcd, abcde

[xyz]

xyz []안에는 얼마든지 쓸수 있다.

/[abc]{2}/ -> ab, abc, adbd

[x-z]

x에서 z까지

/[a-z]{4,}/g -> She shells by the

[^xyz]

x,y,z를 제외한 나머지 모든 것

/[^a-z]{2,}/g -> I am A good Man

\B

\b 를 제외한 전부

/\Bn[a-z]/g

·         noonday

·         online

·         nope

\cX

컨트롤X와 매칭. \cM은 컨트롤M과 매칭

\d

숫자.[0-9]와 같음

/\d/g

·         7 eight 9

·         123

/^0[0-9]{2}/g

·         0120

·         12011

\D

\d 를 제외한 전부

/\D/g

·         7 eight 9

·         12?3

\f

form-feed

\n

new line

\r

carriage return

\s

white space
ex>
, 띄어쓰기, \n, \r

/k\s/g

·         korea

·         blanis

·         blank

\S

\s 를 제외한 전부

/k\S/g

·         korea

·         blank is

\t

\v

vertical tab

\w

알파벳+숫자+_. [A-Za-z0-9_]와 동일

/\w/g

·         !@#$%^&*()+_-[]{}\|"':;,.<>?/

\W

\w 빼고 전부

/\W/g

·         !@#$%^&*()+_-[]{}\|"':;,.<>?/

\n

\n이 자연수일때, ()로 지정한 n번째 정규식

/(.{2})e tru\1 is out \1ere/

·         the truth is out there ...
1th :th

(th) \1로 지정된다.

\xhh

hh hexacode,

/[\x21-\x40]/g

·         !@#$%^&*()po

Code table 보기

\uhhhh

hhhh hexacode,

/[\u3131-\u3163\uac00-\ud7a3]/g

·         나는 blah 직원입니다.ㅋㅋⓥ

코드 번호> 3131: 3163: ac00: d7a3: (javascript, java)


'Language > Java' 카테고리의 다른 글

[Java]Exception 발생시키기  (0) 2015.04.02
[Java]System.arraycopy  (0) 2015.01.23
[Java]Deep copy, Shallow copy  (0) 2014.09.26
[Java]Flag이용하기.  (0) 2014.09.19
Java의 접근 제한자  (0) 2014.08.13
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
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
글 보관함