\ |
Показывает,
что следующий символ является спецсимволом. Последовательность
"\\" соответствует "\", а последовательность
"\(" соответствует "(". |
^ |
Определяет
начало входной строки. Если установлено свойство Multiline,
определяет также позицию сразу после "\n"
(новая строка) и "\r" (возврат каретки). |
$ |
Определяет
конец входной строки. Если установлено свойство Multiline,
определяет также позицию непосредственно перед "\n"
(новая строка) и "\r" (возврат каретки). |
* |
Определяет
ни одного или несколько символов, стоящих перед ним. Эквивалентно {0,}. |
+ |
Определяет
один или несколько символов, стоящих перед ним. Эквивалентно {1,}. |
? |
Определяет
ни одного или один символ, стоящий перед ним. Эквивалентно {0,1}. Если этот
метасимвол идёт непосредственно за конструкциями (*, +, ?,
{n}, {n,}, {n,m}), это приводит к некоторому изменению алгоритма
поиска по заданному шаблону, что проиллюстрировано примером ниже. |
{n} |
Определяет
точное количество символов, стоящих перед ним. "n"
- неотрицательное целое число. |
{n,} |
Определяет
минимальное количество символов, стоящих перед ним. "n"
- неотрицательное целое число. "{0,}" эквивалентно "*", а
"{1,}" эквивалентно "+". |
{n,m} |
Определяет
количество символов, стоящих перед ним (от - до). "n"
и "m" - неотрицательные целые числа,
причём n <= m.
"{0,1}" эквивалентно "?". |
. |
Определяет
любой символ, кроме "\n" (новая строка).
Чтобы определить любой символ, включая "\n",
следует использовать "[\s\S]". |
(шаблон) |
Фиксирует
подбор по шаблону в коллекции SubMatces. Чтобы
определить символы "(" и ")", следует использовать
"\(" и "\)". |
(?:шаблон) |
Полезно
для комбинирования частей шаблона с помощью символа "|"
("или"). Например, "госпо(?:дин|жа)" короче, чем
"господин|госпожа". НЕ фиксирует подбор в
коллекции SubMatces. |
(?=шаблон) |
"Windows(?=95|98)" подберёт подстроку "Windows" в строке "Windows95", но не в
строке "WindowsNT". Дальнейший подбор
начинается немедленно, а не после символов, входящих в скобки. НЕ фиксирует
подбор в коллекции SubMatces. |
(?!шаблон) |
"Windows(?!95|98)" подберёт подстроку "Windows" в строке "WindowsNT",
но не в строке "Windows95". В остальном - полностью аналогично "(?=шаблон)".
|
x|y |
Условие
"или". "вз|перевод" подберёт
"вз" и "перевод". "(вз|пере)вод" подберёт
"взвод" и "перевод". |
[abc] |
Набор
символов. Находит любой из указанных символов. |
[^abc] |
Исключающий
набор символов. Находит любой из неуказанных символов. |
[a-z] |
Диапазон
символов. Находит любой символ из диапазона. |
[^a-z] |
Исключающий
диапазон символов. Находит любой символ, не входящий в диапазон. |
\b \B |
\b - Граница слова, т.е. позиция между концом слова и
пробелом. |
\d \D |
\d - цифра. Эквивалентно [0-9]. |
\w \W |
\w - любой символ слова, включая символ подчёркивания.
Эквивалентно [A-Za-z0-9_]. |
\s \S |
\s - пробельный символ. Эквивалентно [\f\n\r\t\v]. |
\cx |
Управляющий
символ. Параметр "х" лежит в диапазоне
A-Z или a-z. Например, "\cM"
определяет Control-M или символ возврата каретки,
"\cJ" - новая строка, "\cL" - новая страница, "\cI"
- символ табуляции, "\cK" - символ
вертикальной табуляции. |
\f |
Символ
новой страницы. Эквивалент "\x0c" и "\cL". |
\n |
Символ
новой строки. Эквивалент "\x0a" и "\cJ".
|
\r |
Символ
возврата каретки. Эквивалент "\x0d" и "\cM".
|
\t |
Символ
табуляции. Эквивалент "\x09" и "\cI".
|
\v |
Символ
вертикальной табуляции. Эквивалент "\x0b" и "\cK". |
\xn |
Шестнадцатеричный
ASCII-код символа. Должен содержать ровно два символа. |
\num |
Ссылка
на предыдущие зафиксированные (найденные) подстроки-соответствия шаблону (SubMatches). "num" -
положительное целое число, номер соответствия в коллекции SubMatches;
отсчёт с единицы. Например, "(.)\1" определяет два идентичных
символа, следующих друг за другом. |
\un |
Определяет
Unicode-символ по его шестнадцатеричному коду. "n"
- четырёхзначный шестнадцатеричный код. |