Перейти до основного вмісту
Модуль 3 · Урок 1 із 49/32 у курсі~8 min
Модульні уроки (1/4)

Початок і кінець: `^` і `$`

Якорі — це твердження нульової ширини: вони відповідають положенню у рядок, а не символ. Двома найпростішими є ^ (початок рядка) і $ (кінець рядка).

Code
Pattern: ^Errore
Sample:  Errore: connessione persa
         ^^^^^^

Pattern: \.$
Sample:  Frase finale.
                     ^

^Errore відповідає слову Errore тільки якщо воно стоїть на абсолютному початку зразка. \.$ відповідає крапці, лише якщо це останній символ зразка. Ні більше, ні менше.

Повна перевірка

Найпоширенішою ідіомою є використання обох разом: ^pattern$ відповідає лише якщо весь рядок відповідає pattern. Це основа перевірка:

Code
^\d{4}$    a string of exactly 4 digits, nothing before, nothing after

Структурована перевірка з початком і кінцем

Прив’язка шаблону до ^ та $ є важливою для перевірки. Без прив’язок регулярний вираз \\d{5} відповідатиме всередині abc1234567def, тоді як із ^\\d{5}$ рядок відхиляється, оскільки весь текст має містити рівно 5 цифр і більше нічого.

Спробуйте

вправи#regex.m3.l1.e1
Спроби: 0Завантаження…

Зіставте весь рядок, ТІЛЬКИ якщо він містить рівно 4 цифри, нічого перед і після.

Завантаження редактора…
Показати підказку

Без прив’язок \\d{4} також прийматиме «2024abc» або «12345» (перші 4 цифри).

Рішення доступне після 3 спроб

Повторна вправа

вправи#regex.m3.l1.e2
Спроби: 0Завантаження…

Знайдіть останню крапку в реченні, але ТІЛЬКИ якщо це останній символ зразка.

Завантаження редактора…
Показати підказку

\\.$ прив'язує крапку до кінця рядка. Без $ ви б відповідали першій знайденій точці.

Рішення доступне після 3 спроб

Додатковий виклик

вправи#regex.m3.l1.e3
Спроби: 0Завантаження…

Create a pattern that matches only if the entire input string consists exclusively of one or more digits (no other characters at start or end).

Завантаження редактора…
Показати підказку

Поставте ^ на початку та $ у кінці шаблону \\d+.

Рішення доступне після 3 спроб