다음을 통해 공유


정규식 옵션

업데이트: 2007년 11월

일치 동작에 영향을 미치는 옵션을 사용하여 정규식 패턴을 수정할 수 있습니다. 정규식 옵션은 두 가지 기본 방법으로 설정할 수 있습니다. 한 가지 방법은 Regex(pattern, options) 생성자의 options 매개 변수에 지정하는 것이며, 이 경우 optionsRegexOptions 열거값의 비트 논리합 조합입니다. 다른 방법은 인라인 (?imnsx-imnsx:) 그룹화 구문 또는 (?imnsx-imnsx) 기타 구문을 사용하여 정규식 패턴 내에 설정하는 것입니다.

인라인 옵션 구문에서 옵션 또는 옵션 집합 앞에 빼기 기호(-)가 있으면 해당 옵션이 해제됩니다. 예를 들어, 인라인 구문 (?ix-ms)에서는 IgnoreCaseIgnorePatternWhiteSpace 옵션을 사용하도록 설정하고 MultilineSingleline 옵션을 해제합니다. 모든 정규식 옵션은 기본적으로 사용 설정이 해제되어 있습니다.

다음 표에는 RegexOptions 열거의 멤버 및 동일한 기능의 인라인 옵션 문자가 나열되어 있습니다. RightToLeftCompiled 옵션은 식 전체에만 적용되며 인라인으로 사용할 수 없습니다. 이들 옵션은 Regex 생성자의 options 매개 변수에만 지정할 수 있습니다. NoneECMAScript 옵션은 인라인으로 사용할 수 없습니다.

RegexOption 멤버

인라인 문자

설명

None

N/A

옵션이 설정되지 않도록 지정합니다.

IgnoreCase

i

대/소문자를 구분하지 않고 찾도록 지정합니다.

Multiline

m

여러 줄 모드를 지정합니다. 전체 문자열의 시작과 끝만이 아니라 어느 줄에서든 시작과 끝을 각각 나타내도록 ^$의 의미를 변경합니다.

ExplicitCapture

n

유효한 캡처만이 명시적으로 명명되거나 번호가 지정된 (?<name>…) 형식 그룹이 되도록 지정합니다. 이렇게 지정하면 (?:…) 구문을 사용하지 않아도 괄호가 비캡처 그룹으로 작용합니다.

Compiled

N/A

정규식이 어셈블리로 컴파일되도록 지정합니다. 정규식에 대한 MSIL(Microsoft Intermediate Language) 코드를 생성하므로 시작 시간은 느려지지만 실행 속도가 빨라집니다.

Singleline

s

단일 행 모드를 지정합니다. \n을 제외한 모든 문자가 아니라 모든 문자를 나타내도록 마침표 문자(.)의 의미를 변경합니다.

IgnorePatternWhitespace

x

이스케이프되지 않은 공백 문자를 패턴에서 제외하고 숫자 기호(#) 뒤에 주석을 사용하도록 지정합니다. 이스케이프된 공백 문자의 목록을 보려면 문자 이스케이프를 참조하십시오. 공백은 문자 클래스 내에서 제거되지 않습니다.

RightToLeft

N/A

왼쪽에서 오른쪽이 아니라 오른쪽에서 왼쪽으로 검색하도록 지정합니다. 이 옵션을 사용하면 정규식이 시작 위치에서 오른쪽이 아닌 왼쪽으로 이동합니다. 따라서 시작 위치를 문자열의 시작 부분이 아닌 끝 부분으로 지정해야 합니다. 무한 루프가 있는 잘못된 정규식이 되지 않도록 방지하기 위해 이 옵션은 중간에 지정할 수 없습니다. 그러나 (?<) lookbehind 구문에서는 부분식으로 사용할 수 있는 유사한 구문을 제공합니다.

RightToLeft는 검색 방향만 바꾸며 검색된 부분 문자열을 반대 순서로 뒤집지는 않습니다. lookaheadlookbehind 어설션은 검색 방향을 바꾸지 않으며 lookahead는 오른쪽으로 검색하고 lookbehind는 왼쪽으로 검색합니다.

ECMAScript

N/A

ECMAScript와 호환되는 동작을 식에 사용할 수 있도록 지정합니다. 이 옵션은 IgnoreCaseMultiline 플래그와 병행하여 사용해야 합니다. ECMAScript를 다른 플래그와 함께 사용하면 예외가 발생합니다.

CultureInvariant

N/A

언어의 문화권 차이점이 무시되도록 지정합니다. 자세한 내용은 RegularExpressions 네임스페이스에서 문화권의 영향을 받지 않는 작업 수행을 참조하십시오.

참고 항목

기타 리소스

정규식 언어 요소