| Символ |
Описание |
| \ |
Обозначает следующий символ как специальный символ, или как символ с буквальным значением, или как обратное ссылочное выражение, или как восьмеричный escape. Например, “n” соответствует символу “n”. “\n” соответствует символу новой строки. Последовательность “\\” соответствует символу “\”, а “\(” соответствует символу “(”. |
| ^ |
Соответствует начальной позиции входной строки. Если установлен режим многострочности объекта RegExp, ^ также соответствует позиции после “\n” или “\r”. |
| $ |
Соответствует конечной позиции входной строки. Если установлен режим многострочности объекта RegExp, $ также соответствует позиции перед “\n” или “\r”. |
| * |
Соответствует предыдущей подвыражении 0 или более раз. Например, zo* может соответствовать “z” и “zoo”. * эквивалентен {0,}. |
| + |
Соответствует предыдущей подвыражении один или более раз. Например, “zo+” может соответствовать “zo” и “zoo”, но не может соответствовать “z”. + эквивалентен {1,}. |
| ? |
Соответствует предыдущей подвыражении 0 или 1 раз. Например, “do(es)?” может соответствовать “do” в “do” или “does”. ? эквивалентен {0,1}. |
| {n} |
n – неотрицательное целое число. Соответствует именно n раз. Например, “o{2}” не может соответствовать “o” в “Bob”, но может соответствовать двум o в “food”. |
| {n,} |
n – неотрицательное целое число. Соответствует не менее n раз. Например, “o{2,}” не может соответствовать “o” в “Bob”, но может соответствовать всем o в “foooood”. “o{1,}” эквивалентно “o+”. “o{0,}” эквивалентно “o*”. |
| {n,m} |
m и n – неотрицательные целые числа, где n≤m. Соответствует не менее n раз и не более m раз. Например, “o{1,3}” будет соответствовать первому трем o в “fooooood”. “o{0,1}” эквивалентно “o?”. Обратите внимание, что пробелы не должны быть между запятой и двумя числами. |
| ? |
Когда этот символ идет сразу после любого другого ограничителя (*, +, ?, {n}, {n,}, {n,m}), режим соответствия становится жадным. Нежадный режим соответствует строке наименьшим образом, тогда как жадный режим соответствует строке наибольшим образом. Например, для строки “oooo”, “o+?” будет соответствовать одному “o”, тогда как “o+” будет соответствовать всем “o”. |
| . |
Соответствует любому одному символу, кроме “\n”. Чтобы соответствовать любому символу, включая “\n”, применяйте такие шаблоны, как “[.\n]”. |
| (pattern) |
Соответствует шаблону и получает это соответствие. Полученные совпадения можно извлечь из коллекции, а в VBScript они доступны через коллекцию SubMatches, а в JScript через свойства $0…$9. Чтобы соответствовать символам круглых скобок, используйте “\(” или “\)”. |
| (?:pattern) |
Соответствует шаблону, но не получает результат соответствия, то есть это необязательное соответствие, не сохраняющееся для последующего использования. Это удобно, когда соединяете различные части шаблона с помощью или “(|)”. Например, “industr(?:y|ies)” является более компактным выражением по сравнению с “industry|industries”. |
| (?=pattern) |
Позитивный предикат, который соответствует началу строки, в котором совпадает шаблон. Это необязательное соответствие, то есть символ не нужно хранить для последующего использования. Например, “Windows(?=95|98|NT|2000)” сможет соответствовать “Windows” в “Windows2000”, но не сможет соответствовать “Windows” в “Windows3.1”. Предикаты не потребляют символы, это означает, что когда совпадение происходит, следующее совпадение начинается сразу после последнего совпадения, а не с символов, содержащих предикат. |
| (?!pattern) |
Негативный предикат, который соответствует началу строки, в которой не совпадает шаблон. Это необязательное соответствие, то есть символ не нужно хранить для последующего использования. Например, “Windows(?!95|98|NT|2000)” сможет соответствовать “Windows” в “Windows3.1”, но не сможет соответствовать “Windows” в “Windows2000”. Предикаты не потребляют символы, это означает, что когда совпадение происходит, следующее совпадение начинается сразу после последнего совпадения, а не с символов, содержащих предикат. |
| x|y |
Соответствует x или y. Например, “z|food” может соответствовать “z” или “food”. “(z|f)ood” соответствует “zood” или “food”. |
| [xyz] |
Символьный класс. Соответствует любому из включенных символов. Например, “[abc]” может соответствовать “a” в “plain”. |
| [^xyz] |
Отрицательный символьный класс. Соответствует любому символу, который не включен. Например, “[abc]” может соответствовать “p” в “plain”. |
| [a-z] |
Диапазон символов. Соответствует любому символу, находящемуся в указанном диапазоне. Например, “[a-z]” может соответствовать любому нижнему регистру от “a” до “z”. |
| [^a-z] |
Отрицательный диапазон символов. Соответствует любому символу, который не находится в указанном диапазоне. Например, “[a-z]” может соответствовать любому символу, который не лежит в диапазоне от “a” до “z”. |
| \b |
Соответствует границе слова, то есть месту между словом и пробелом. Например, “er\b” может соответствовать “er” в “never”, но не может соответствовать “er” в “verb”. |
| \B |
Соответствует не границе слова. “er\B” может соответствовать “er” в “verb”, но не может соответствовать “er” в “never”. |
| \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, где n – шестнадцатичное значение. Шестнадцатичное значение обязательно должно состоять из двух цифр. Например, “\x41” соответствует “A”. “\x041” эквивалентно “\x04&1”. В регулярных выражениях можно использовать ASCII кодировку. |
| \num |
Соответствует num, где num – положительное целое число. Ссылается на полученное совпадение. Например, “(.)\1” соответствует двум одинаковым последовательным символам. |
| \n |
Идентифицирует восьмеричный код или обратное соответствие. Если \n соответствует как минимум n полученным подвыражениям, то n будет обратным соответствием. В противном случае, если n – это восьмеричные числа (0-7), то n – это восьмеричный escape. |
| \nm |
Идентифицирует восьмеричный код или обратное соответствие. Если nm соответствует как минимум nm полученным подвыражениям, то nm будет обратным соответствием. Если n соответствует как минимум n, а m – это буквальная m, то n будет относиться к символу, следующему за m. Если ни одно из предыдущих условий не выполняется, а n и m являются восьмеричными числами (0-7), то nm будет соответствовать восьмеричному escape. |
| \nml |
Если n является восьмеричным числом (0-3), и m и l являются восьмеричными числами (0-7), то соответствует восьмеричному escape nml. |
| \un |
Соответствует n, где n – символ Unicode, представляемый четырьмя шестнадцатичными числами. Например, \u00A9 соответствует символу авторского права (?). |