주로 사용하는 정규 표현식의 패턴을 정리해 보면
정규식 패턴 |
의미 |
사용 예시 |
설명 |
^ |
줄(Line)의 시작에서 일치 |
^abc |
abc로 시작하는 |
$ |
줄(Line)의 끝에서 일치 |
abc$ |
abc로 끝나는 |
. |
임의의 한 문자와 일치 |
… |
임의의 문자 3개 |
a|b |
a 또는 b와 일치, 인덱스가 작은 것을 우선 반환 |
a|b |
a또는 b와 일치하는 |
* |
0회 이상 연속으로 반복되는 문자와 가능한 많이 일치 |
a* |
a가 0~n개, {0,}와 동일 |
*? |
0회 이상 연속으로 반복되는 문자와 가능한 적게 일치(lazy) |
|
{0}와 동일 |
+ |
1회 이상 연속으로 반복되는 문자에 가능한 많이 일치 |
a+ |
a가 1~0개, {1,}와 동일 |
+? |
1회 이상 연속으로 반복되는 문자에 가능한 적게 일치(lazy) |
|
{1}와 동일 |
? |
없거나 1회 가능한 많이 일치 |
a? |
a가 0또는 1개일 경우 |
?? |
없거나 1회 가능한 적게 일치(lazy) |
|
|
{3} |
3(숫자)개 연속 일치 |
a{3} |
a가 3번 |
{3,} |
3개 이상 연속 일치 |
a{3,} |
a가 최소 3번 |
{3,5} |
3개 이상 5개 이하(3~5개) 연속 일치 |
a{3,5} |
a가 3~5회 즉, aaa,aaaa,aaaaa |
{3,5}? |
3개 이상 5개 이하(3~5개) 연속 중 가능한 적은 3개 연속 일치 |
|
{3}와 동일 |
() |
캡처(Capture)할 그룹 |
|
추출할 문자열을 괄호로 묶는다고 생각하면됨 |
[abc] |
a,b,c중 1개와 일치, |
|
점(.)이나 별표(*) 같은 특수 문자는 []안에서 특수 문자가 아님, /\.[.]/ |
[a-z] |
a부터 z 사이의 문자 구간에 일치(영어 소문자) |
[b-f] |
b,c,d,e,f 중 하나 |
[A-Z] |
A부터 Z 사이의 문자 구간에 일치(영어 대문자) |
[A-C] |
A,B,C 중 하나 |
[0-9] |
0부터 9 사이의 문자 구간에 일치(숫자) |
[1-6] |
1,2,3,4,5,6 중 하나 |
[가-힣] |
가부터 힣 사이의 문자 구간에 일치(한글) |
[다-바] |
다부터 바 사이의 문자 구간에 일치(다,라,마,바) |
[^abc] |
a 또는 b 또는 c가 아닌 나머지 문자에 일치(부정) |
|
|
\ |
이스케이프 문자 |
/\.\?\/\$\^/ |
정규식내 특수의미 문자를 일반문자화시킴 |
\b |
63개 문자가 아닌 나머지 문자에 일치하는 경계(boundary) |
|
대소문자 52개 + 숫자 10개 + _(underscore) |
\B |
63개 문자에 일치하는 경계 |
|
|
\d |
숫자(Digit)에 일치 |
|
|
\D |
숫자가 아닌 문자에 일치 |
|
|
\s |
공백(Space, Tab 등)에 일치 |
|
|
\S |
공백이 아닌 문자에 일치 |
|
|
\w |
63개 문자(Word, 영문 대소문자 52개 + 숫자 10개 + _)에 일치 |
|
|
\W |
63개 문자가 아닌 나머지 문자에 일치 |
|
|
\x |
16진수 문자에 일치 |
/\x61/ |
a에 일치 |
₩0 |
8진수 문자에 일치 |
/\141/ |
a에 일치 |
\u |
유니코드(Unicode) 문자에 일치 |
/\u0061/ |
a에 일치 |
\c |
제어(Control) 문자에 일치 |
|
|
\f |
폼 피드(FF, U+000C) 문자에 일치 |
|
|
\n |
줄 바꿈(LF, U+000A) 문자에 일치 |
|
|
'소프트웨어 > 개발관련' 카테고리의 다른 글
정규 표현식을 배워보자 #01 기초편 (0) | 2019.01.16 |
---|---|
04.정규표현식(正規表現式, Regular Expression) 관련 Site (0) | 2019.01.15 |
02.정규표현식(正規表現式, Regular Expression) 예시 (0) | 2019.01.15 |
01. 정규표현식(正規表現式, Regular Expression) (0) | 2019.01.15 |
산업용 PDA AT570, AT870 UHFDemo Source (0) | 2016.06.16 |