정규 표현식(regex) 기초

다음 표는 ViDi GUI에서 정규식을 이용하기 위한 기초를 제공합니다.

앵커

^

문자열 또는 줄의 시작을 지정합니다. 예를 들어 ^0은 0으로 시작하는 문자열과 일치합니다.

참고 :  [^0]처럼 ^ 문자가 대괄호 안에 들어 있다면, ^는 시작하지 않는다는 뜻입니다.

$

문자열 또는 줄의 끝을 지정합니다. 예를 들어 0$는 0으로 끝나는 문자열과 일치합니다.

기본적 일치

.

모든 문자 하나와 일치합니다.

참고 :  마침표와 일치하려면, 슬래시를 이용한 이스케이프 문자를 써야 합니다. 예를 들어, \.라고 입력합니다.

\d

0123456789 범위의 모든 한 자리 숫자와 일치합니다.

실제 숫자 0-9는 숫자를 써서 표현할 수도 있습니다.

\w

모든 글자, 숫자, 밑줄(_)과 일치합니다.

대소문자를 구별하는 실제 문자는 a-z 또는 A-Z의 문자를 입력하여 표현할 수도 있습니다.

\s

공백과 일치합니다.

특수 문자

[...]

대괄호 [ ]는 대괄호 안의 특수 문자와 일치합니다. 예를 들어, [a-z]는 a부터 z 사이의 소문자 하나와 일치하며, T[ao]p은 Tap 또는 Top과 일치합니다. 대괄호는 복합적 구조로 이용할 수 있습니다. 예를 들어, [A-C][0-3][g-i]는 A0g, A0h, B1i, C3g 등의 문자열과 일치합니다.

반복

{...} 중괄호 { }는 반복을 나타냅니다. 예를 들어, t{2}는 두 개의 t를 반환하고, [def]{3}는 d, e, f로 된 세 자를 반환하며, .{1,4}는 모든 문자 1-4자와 일치합니다.

*

문자 또는 숫자가 0개 이상 나타남을 의미합니다. 예를 들어, a*는 0개 이상의 문자와 일치합니다.

+

문자가 1개 이상 나타남을 의미합니다. 예를 들어, [nop]+는 n, o, p 글자가 하나 이상 있는 경우 일치합니다.

옵션 문자

?

물음표 ?는 앞에 있는 문자 또는 그룹 0 또는 1개와 일치합니다. For example, 12?3은 123 또는 13과 일치합니다.

참고 :  물음표와 일치하려면, 슬래시를 이용한 이스케이프 문자를 써야 합니다. 예를 들어, \?라고 입력합니다.

그룹

(...)

괄호는 문자 그룹을 정의하여, 괄호 내 쌍이 그룹을 형성합니다. 이는 이미지 파일 이름에서 정보를 추출할 때 매우 유용합니다. 예를 들어, 이미지들이 Good_0001.png처럼 특정한 이름 지정 규칙을 따랐는데, 이 이미지들만을 반환하고 싶으면, ^(Good.+)\.png$와 같이 쓸 수 있습니다.

또한 중첩된 그룹을 캡처할 때도 괄호를 쓸 수 있습니다. 위의 예에서, ^(Good(\d+))\.png$처럼 숫자에 따라 검색을 정교하게 할 수 있습니다.

또한, 위에 설명된 한정자도 괄호 안에 써서 패턴을 캡처할 수 있습니다. 예를 들어, 1000보다 큰 영역을 캡처하고 싶다면, (\d{4})x(\d{4})를 이용할 수 있습니다.

논리적 OR 식별자 |는 다양한 가능한 집합 또는 문자를 나타내기 위해 이용할 수 있습니다. 예를 들어, 파일 이름 집합에서 "scratch", "dent", "hole" 등을 반환하고 싶다면, ^(Bad(\d+)(scratch|dent|hole))\.png$를 쓸 수 있습니다.