| 정규 문자 |
설명 |
| \ |
다음 문자를 특별한 문자, 원래 문자, 역참조, 혹은 8진수 이스케이프 기호로 표시합니다. 예를 들어, “n"은 문자"n"과 일치합니다. "\n"은 줄 바꿈 문자와 일치합니다. "\\"은"\"와 일치하고 "\("은"("와 일치합니다. |
| ^ |
입력 문자열의 시작 위치와 일치합니다. RegExp 객체의 Multiline 속성이 설정된 경우 ^는 “\n" 또는 "\r" 다음의 위치도 일치합니다. |
| $ |
입력 문자열의 끝 위치와 일치합니다. RegExp 객체의 Multiline 속성이 설정된 경우 $는 “\n" 또는 "\r" 이전의 위치도 일치합니다. |
| * |
앞의 서브 표현식에 대해 0번 이상 일치합니다. 예를 들어, "zo*"는 “z" 및 "zoo"와 일치합니다. *는 {0,}과 같습니다. |
| + |
앞의 서브 표현식에 대해 1번 이상 일치합니다. 예를 들어, “zo+"는 "zo" 및 "zoo"와 일치하지만 "z"와는 일치하지 않습니다. +는 {1,}과 같습니다. |
| ? |
앞의 서브 표현식에 대해 0번 또는 1번 일치합니다. 예를 들어, “do(es)?"는 "does" 또는 "does"의 "do"와 일치합니다. ?는 {0,1}와 같습니다. |
| {n} |
n은 비부정 정수입니다. 특정한 n 회와 일치합니다. 예를 들어, “o{2}"는 "Bob"의 "o"와 일치하지 않지만, "food"의 두 개의 o와 일치합니다. |
| {n,} |
n은 비부정 정수입니다. 최소한 n 번 이상 일치합니다. 예를 들어, “o{2,}"는 "Bob"의 "o"와 일치하지 않지만, "foooood"의 모든 o와 일치합니다. "o{1,}"는 "o+"와 같으며, "o{0,}"는 "o*"와 같습니다. |
| {n,m} |
m과n은 모두 비부정 정수이며, n <= m여야 합니다. 최소 n 번 이상 일치하고 최대 m 번 이하로 일치합니다. 예를 들어, “o{1,3}"는 "fooooood"의 처음 세 개의 o에 일치합니다. "o{0,1}"는 "o?"와 같으며, 조건 사이에 공백이 없어야 합니다. |
| ? |
문자가 다른 제한자(*,+,?,{n},{n,},{n,m}) 뒤에 있을 경우 일치하는 패턴은 비탐욕적입니다. 비탐욕적 모드는 검색하려는 문자열을 가능한 한 적게 일치시키고 기본적으로 탐욕적 모드는 가능한 한 많이 일치시킵니다. 예를 들어, 문자열 “oooo"에 대해서 "o+?"는 단일 "o"와 일치하고 "o+"는 모든 "o"와 일치합니다. |
| . |
문자 "“\n"을 제외한 모든 단일 문자와 일치합니다. "(.|\n)" 패턴과 같이 “\n"을 포함한 모든 문자와 일치하려면 사용합니다. |
| (pattern) |
패턴과 일치하고 이 매칭 결과를 잡아냅니다. 얻은 일치는 생성된 Matches 컬렉션에서 얻을 수 있으며, VBScript에서 SubMatches 컬렉션을 사용하고 JScript에서는 $0...$9 속성을 사용합니다. 괄호 문자를 일치시키려면 “\(" 또는 "\)"를 사용합니다. |
| (?:pattern) |
패턴과 일치하지만 일치한 결과를 가져오지 않으며, 즉 비취득 매칭입니다. 이는 OR 기호 “(|)"를 사용하여 패턴의 각 부분을 조합하는 데 유용합니다. 예를 들면 "industr(?:y|ies)"는 "industry|industries"보다 더 간결한 표현식입니다. |
| (?=pattern) |
정방향 긍정 예측일치로, 패턴과 일치하는 문자열의 시작 부분에서 검색 문자열을 일치시킵니다. 이는 비취득 매칭이므로, 이 매칭은 이후에 사용하기 위해서 가져올 필요가 없습니다. 예를 들어, “Windows(?=95|98|NT|2000)"는 "Windows2000"의 "Windows"와 일치하지만 "Windows3.1"의 "Windows"와 일치하지 않습니다. 예측 일치는 문자를 소비하지 않으며, 매칭이 발생한 후, 마지막 매칭 후 즉시 다음 매칭의 검색을 시작하여, 예측을 포함한 문자 다음에서 시작하지 않습니다. |
| (?!pattern) |
정방향 부정 예측일치로, 패턴과 일치하지 않는 문자열의 시작 부분에서 검색 문자열을 일치시킵니다. 이는 비취득 매칭이므로, 이 매칭은 이후에 사용하기 위해서 가져올 필요가 없습니다. 예를 들어 “Windows(?!95|98|NT|2000)"는 "Windows3.1"의 "Windows"와 일치하지만 "Windows2000"의 "Windows"와는 일치하지 않습니다. 예측 일치는 문자를 소비하지 않으며, 이후의 매칭에 대해 매칭이 발생한 후 마지막으로 매칭 한 뒤 즉시 다음 매칭의 검색을 시작합니다. |
| (?<=pattern) |
역방향 긍정 예측일치로, 정방향 긍정 예측일치와 비슷하지만 방향이 반대입니다. 예를 들어, “(?<=95|98|NT|2000)Windows"는 "2000Windows"의 "Windows"와 일치하지만 "3.1Windows"의 "Windows"와 일치하지 않습니다. |
| (?
| 역방향 부정 예측일치로, 정방향 부정 예측일치와 비슷하지만 방향이 반대입니다. 예를 들어 “(?"는 "3.1Windows"의 "Windows"와 일치하지만 "2000Windows"의 "Windows"와는 일치하지 않습니다. |
| x|y |
x 또는 y와 일치합니다. 예를 들어, “z|food"는 "z" 또는 "food"와 일치합니다. "(z|f)ood"는 "zood" 또는 "food"와 일치합니다. |
| [xyz] |
문자 집합입니다. 포함된 임의의 문자와 일치합니다. 예: “[abc]"는 "plain"의 "a"와 일치할 수 있습니다. |
| [^xyz] |
부정 문자 집합입니다. 포함되지 않은 임의의 문자와 일치합니다. 예: “[^abc]"는 "plain"의 "p"와 일치합니다. |
| [a-z] |
문자 범위입니다. 지정된 범위 내의 임의의 문자와 일치합니다. 예: “[a-z]"는 "a"에서 "z"까지의 임의의 소문자 문자와 일치합니다. |
| [^a-z] |
부정 문자 범위입니다. 지정된 범위에 없는 임의의 문자와 일치합니다. 예: “[^a-z]"는 "a"에서 "z"까지의 임의의 문자를 제외합니다. |
| \b |
단어 경계를 일치시키며, 즉 단어와 공백 사이의 위치입니다. 예: “er\b"는 "never"의 "er"와 일치하지만 "verb"의 "er"와는 일치하지 않습니다. |
| \B |
비단어 경계를 일치시킵니다. “er\B"는 "verb"의 "er"와 일치하지만 "never"의 "er"와는 일치하지 않습니다. |
| \cx |
x로 지시된 제어 문자를 일치시킵니다. 예: \cM은 Control-M 또는 캐리지 리턴 문자와 일치합니다. x의 값은 A-Z 또는 a-z 중 하나여야 하며, 그렇지 않으면 c는 원래 "c" 문자로 간주됩니다. |
| \d |
수치 문자와 일치합니다. [0-9]와 같습니다. |
| \D |
비수치 문자와 일치합니다. [^0-9]와 같습니다. |
| \f |
페이지 구분 문자와 일치합니다. \x0c 및 \cL과 같습니다. |
| \n |
줄 바꿈 문자와 일치합니다. \x0a 및 \cJ와 같습니다. |
| \r |
캐리지 리턴 문자와 일치합니다. \x0d 및 \cM과 같습니다. |
| \s |
공백 문자를 포함한 모든 공백 문자를 일치시킵니다. [ \f\n\r\t\v]와 같습니다. |
| \S |
모든 비공백 문자와 일치합니다. [^ \f\n\r\t\v]와 같습니다. |
| \t |
제어 문자와 일치합니다. \x09 및 \cI와 같습니다. |
| \v |
수직 탭 문자와 일치합니다. \x0b 및 \cK와 같습니다. |
| \w |
언더스코어를 포함한 모든 단어 문자와 일치합니다. “[A-Za-z0-9_]"와 같습니다. |
| \W |
모든 비단어 문자와 일치합니다. “[^A-Za-z0-9_]"와 같습니다. |
| \xn |
n은 16진수 이스케이프 값입니다. 16진수 이스케이프 값은 반드시 두 자리 숫자여야 합니다. 예: “\x41"는 "A"와 일치합니다. "\x041"는 "\x04&1"와 같습니다. 정규 표현식에서는 ASCII 인코딩을 사용할 수 있습니다. |
| \num |
num는 양의 정수로, 얻은 일치 항목의 참조입니다. 예: “(.)\1"는 두 개의 연속된 동일 문자를 일치시킵니다. |
| \n |
8진수 이스케이프 값 또는 역참조를 식별합니다. 만약 \n 이전에 적어도 n 개의 얻은 서브 표현식이 있다면, n은 역참조입니다. 그렇지 않으면, n이 8진수 숫자(0-7)인 경우, n은 8진수 이스케이프 값입니다. |
| \nm |
8진수 이스케이프 값 또는 역참조를 식별합니다. 만약 \nm 이전에 적어도 nm 개의 얻은 서브 표현식이 있다면, nm은 역참조입니다. 만약 \nm 이전에 적어도 n 개의 얻은 서브 표현식이 있다면, n은 다음 문자를 따라 오는 역참조입니다. 이러한 조건이 충족되지 않을 경우, n과 m 이 모두 8진수 숫자(0-7)일 경우, \nm은 8진수 이스케이프 값을 일치시킵니다. |
| \nml |
만약 n이 8진수 숫자(0-3)이고, m 및 l이 모두 8진수 숫자(0-7)이면, 8진수 이스케이프 값 nml와 일치합니다. |
| \un |
n을 일치시킵니다. 여기서 n은 네 개의 16진수 숫자로 표시된 Unicode 문자입니다. 예를 들어, \u00A9은 저작권 기호 (©)와 일치합니다. |