Представления символов
Символы — большинство из которых в регулярных выражениях представляют сами себя, за исключением специальных символов [ ] ^ $ . | ? * + ( ) { } Но чтобы и эти символы представить в качестве самих себя, то перед каждым достаточно добавить символ (обратную косую черту). Если же требуется задать некую последовательность специальных символов, то можно заключить их в специальную группу, между Q и E.
Управляющие символы
Представление | Символ |
---|---|
. | Любой символ за исключением конца строки |
t | Табуляция |
v | Вертикальная табуляция |
r | Возврат каретки |
n | Перевод строки |
f | Конец страницы |
a | Звонок |
e | Escape-символ |
b | Когда используется в квадратных скобках, то означает обратную косую черту |
cA … cZ | Ctrl+A … Ctrl+Z Например, последовательность cMcJ соответствует управляющим символам CR LF. Эквивалентно x01 … x1A. |
Сокращённые обозначения символьных классов
Символьный класс — набор символов в квадратных скобках, который указывает, что на данном месте может стоять любой из перечисленных в нем символов.
Представление | Эквивалент | Значение |
---|---|---|
d | [0-9] | Цифра |
D | [^d] | Любой символ, кроме цифры |
w | [A-Za-zА-Яа-я0-9_] | Символы, образующие «слово» (буквы, цифры и символ подчёркивания) |
W | [^w] | Символы, не образующие «слово» |
s | [ tvrnf] | Пробельный символ |
S | [^s] | Непробельный символ |
Позиция внутри строки
Представленные ниже символы позволяют спозиционировать регулярное выражение относительно элементов текста: начала и конца строки, границ слова.
Представление | Позиция | Пример | Соответствие |
---|---|---|---|
^ |
Начало строки | ^a |
aaa aaa |
$ |
Конец строки | a$ |
aaa aaa |
b |
Граница слова | ab |
aaa aaa |
ba |
aaa aaa |
||
B |
Не граница слова | BaB |
aaa aaa |
G |
Предыдущий успешный поиск | Ga |
aaa aaa (поиск остановился на 4-й позиции — там, где не нашлось a ) |
Примеры и их соответствие
Пример | Соответствие |
---|---|
a.? | a. или a |
a\\b | a\b |
a[F] | a[F] |
Q+-*/E | символы + — * / |
(a|b) | a или b |
[abc] | a, b или c |
[^abc] | все, кроме a, b и c |
[a-q] | буквы от a до q в нижнем регистре |
[A-Q] | буквы от A до Q в верхнем регистре |
[0-7] | цифры от 0 до 7 |
[135adb] | только заданные указанные цифры и буквы |
Квантификаторы
Квантификаторы — ставятся после символа, группы символов или символьного класса и определяют, сколько раз предшествующее выражение может встречаться
Представление | Эквивалент | Число повторений | Пример | Соответствие |
---|---|---|---|---|
{n} | Ровно n раз | colou{3}r | colouuur | |
{m,n} | От m до n включительно | colou{2,4}r | colouur, colouuur, colouuuur | |
{m,} | Не менее m | colou{2,}r | colouur, colouuur, colouuuur и т. д. | |
{,n} | Не более n | colou{,3}r | color, colour, colouur, colouuur | |
* | {0,} | Ноль или более | colou*r | color, colour, colouur и т. д. |
+ | {1,} | Одно или более | colou+r | colour, colouur и т. д. (но не color) |
? | {0,1} | Ноль или одно | colou?r | color, colour |