В прошлой статье мы с Вами начали учиться составлять регулярные выражения, однако, мы рассмотрели только первую часть возможностей: использование метасимволов . И сегодня мы с Вами рассмотрим квантификаторы (или как их ещё называют - квантификаторы повторений ) в регулярных выражениях.
В прошлой статье мы с Вами начали учиться составлять регулярные выражения, однако, мы рассмотрели только первую часть возможностей: использование метасимволов. И сегодня мы с Вами рассмотрим квантификаторы (или как их ещё называют - квантификаторы повторений) в регулярных выражениях.
Мы с Вами рассматривали метасимволы, И Вы должны помнить, что один метасимвол соответствует только одному символу. И это не всегда удобно, так как у нас может идти целая определённая последовательность символов. И вот для задания последовательности определённых символов используются квантификаторы повторений.
Как и в прошлый раз, приведу таблицу с различными квантификаторами и их пояснением.
| Квантификатор | Что делает |
| * | Соответствие возникнет, если предыдущий символ будет повторяться любое число раз (в том числе и 0 раз). |
| + | Соответствие возникнет, если предыдущий символ будет повторяться хотя бы один раз. То есть отличие от квантификатора *, здесь требуется, чтобы предшествующий символ был бы хотя бы один раз. |
| ? | Соответствие возникнет, если предыдущего символа вообще не было, либо он был только один раз. |
| {n} | Соответствие возникнет, если предыдущий символ будет повторяться ровно n раз. |
| {n,} | Соответствие возникнет, если предыдущий символ будет повторяться n или более раз. |
| {n,m} | Соответствие возникнет, если предыдущий символ будет повторяться от n до m раз. |
Здесь всё прозрачно, однако, наверняка у Вас возникет вопрос, что это за такой "предыдущий символ"?. Собственно, это предыдущий символ регулярного выражения, в частности, метасимвол. Давайте приведу пример, чтобы стало всё понятнее:
/[0-9]?ab*/
Переведу данное регулярное выражение на русский язык. Строка, которая "содержит последовательность символов, начинающуюся с цифры, либо с её отсутствия, затем идёт один символ "a", а потом любое число раз символа "b"", будет соответствовать регулярному выражению, написанному выше.
Например, такая строка будет соответствовать данному регулярному выражению: "не_важно_что0abbbbbне_важно_что", либо такая "ab", либо такая "a".
Надеюсь, что принцип использования квантификаторов в регулярных выражения Вам понятен, а в следующей статье рассмотрим последнюю группу элементов, используемых в регулярных выражениях, которую называют спецсимволы.
