53 - [오토핫키] 정규식 패턴표
53 - [오토핫키] 정규식 패턴표
정규식은 기본적으로 대소문자를 구분합니다. 또한 오토핫키에서 특수문자를 그대로 출력하기 위해 ` (악센트)를 사용했다면 정규식 내에서는 \ (역슬래시)를 사용합니다. 따라서 \.*?+[{\(^$ 등 특수문자 앞에는 역사선을 써줘야 합니다. 참고로 인터넷 소스 등을 파싱하다 보면 "http://secretgd.tistory.com" 처럼 " (겹따옴표)로 둘러싸인 URL등을 사용 할때는 ""http://secretgd.tistory.com"" 이렇게 이중으로 감싸주면 정상적으로 인식하게 됩니다. |
옵션
정규식 맨 앞에 옵션을 지정하고 반괄호를 닫습니다. 예) "i)a" 대소문자를 구분하지 않고 a, A를 찾습니다. |
i |
대소문자를 구분하지 않습니다 |
m |
하나의 긴 줄이 아닌 여러줄의 집단으로 인식합니다. "D" 옵션은 "m"이 있으면 무시됩니다. |
s |
DotAll. 마침표가 모든 문자에 일치합니다. |
x |
문자 부류로 피신시키지 않은 공백을 무시합니다. |
A |
Haystack의 시작에 패턴을 고정합니다. |
D |
$ (달러)를 강제로 Haystack의 맨 끝에 잡아줍니다. |
J |
이름붙인 부패턴의 중복을 허용합니다. |
U |
비탐욕적이 됩니다. |
X |
PCRE 틍징을 활성화 합니다. |
P |
위치 모드. RegExMatch()가 Mode 2 로 변경 됩니다. |
S |
패턴의 수행성능을 향상 시킵니다. |
C |
callout 모드를 켭니다. |
`n |
단독 라인으로 변경합니다. |
`r |
단독 캐리지 리턴으로 변경합니다. |
`a |
어떤 종류의 새줄이던 모두 인식합니다. |
패턴
. |
점은 문자 하나를 인식합니다. |
* |
별표는 0개 이상의 이전 문자, 부류, 부패턴을 인식합니다. |
? |
물은표는 0개 이상의 이전 문자, 부류, 부패턴을 선택적으로 인식합니다. |
+ |
덧셈은 1개 이상의 이전 문자, 부류, 부패턴을 인식합니다. |
{min,max} |
이전 문자, 부류, 부패턴을 최소 min회, 최대 max회를 인식합니다. |
[...] |
부류 : 문자의 범위를 나타냅니다. [a-z] a~z까지 알파벳을 인식합니다. [0-9] 숫자를 인식합니다. |
[^...] |
부류에 없는 문자를 인식합니다. |
\d |
숫자 하나를 인식합니다. \D는 숫자가 아닌 문자 하나를 인식합니다. |
\s |
공백을 인식합니다. 스페이스, 탭, 엔터를 인식합니다. \S는 공백이 아닌 문자를 인식합니다. |
\w |
단어, 숫자, 밑줄문자를 인식합니다. [a-zA-Z0-9_]와 같음 \W는 단어가 아닌 문자를 인식합니다. |
^ 혹은 $ |
닻(anchors)로 표현하며 문자를 소비하지 않습니다. ^ 는 패턴의 맨 앞이 일치해야 인식합니다. $는 패턴의 맨 뒤가 일치해야 인식합니다. |
\b |
단어 경계를 의미하며 문자를 소비하지 않습니다. |
(...) |
부패턴 : 패턴 내에 부패턴을 인식합니다. RegExMatch()에서 부패턴의 값을 출력 배열로 얻을 수 있으며 RegExReplace()에서는 $1처럼 역참조로 부패턴의 값을 얻을 수 있습니다. |
etc |
특수문자. \t (탭) \n (엔터) 등등. |
(*UCP) |
유니코드 특성을 사용합니다. |