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

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

Anchors are zero-width assertions: they match a position in the string, not a character. The two most basic ones are ^ (start of string) and $ (end of string).

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

Pattern: \.$
Sample:  Frase finale.
                     ^

^Errore matches the word Errore only if it is at the absolute start of the sample. \.$ matches a period only if it is the last character of the sample. Nothing more, nothing less.

Full validation

The most common idiom is to use both together: ^pattern$ matches only if the entire string corresponds to pattern. It is the basis of validation:

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

Structured validation with start and end

Anchoring a pattern with ^ and $ is essential for validation. Without anchors, the regex \\d{5} will match inside abc1234567def, whereas with ^\\d{5}$ the string is rejected because the entire text must contain exactly 5 digits and nothing else.

Try it

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

Match the whole string ONLY if it contains exactly 4 digits, nothing before and nothing after.

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

Without anchors, \\d{4} would also accept '2024abc' or '12345' (first 4 digits).

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

Review exercise

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

Find the final period of the sentence, but ONLY if it is the last character of the sample.

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

\\.$ anchors the period to the end of the string. Without $ you would match the first period found.

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

Additional challenge

вправи#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).

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

Put ^ at the beginning and $ at the end of the \d+ pattern.

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