Курс языка программирования Raku / Регулярные выражения и грамматики / Регулярные выражения / Утверждения просмотра
Просмотр назад
Просмотр назад проверяет, что идёт непосредственно перед текущей позицией:
<?after …>— срабатывает, если текст позади совпадает (положительный просмотр назад)<!after …>— срабатывает, если текст позади не совпадает (отрицательный просмотр назад)
Это позволяет сопоставить что-то только из-за того, что ему
предшествует, не включая этот префикс в результат. Например, захватим
цифры, следующие за знаком доллара, оставив сам $ вне
совпадения:
if '$100' ~~ / <?after '$'> \d+ / {
say $/; # 「100」
}Утверждение <?after '$'> требует, чтобы прямо
перед текущей позицией стоял $, а затем \d+
сопоставляет цифры. Совпадение — 100, без знака
доллара.
Просмотр вперёд и назад часто сочетают. Кусочек текста, обёрнутый в
<?after …> и <?before …>,
совпадает только тогда, когда стоит между нужными соседями, — удобный
способ извлечь значение из известного контекста.
Практика
Пройдите 1 тест по содержанию этой темы.
Навигация по курсу
← Тест — Просмотр вперёд | Тест — Утверждения →
💪 Или перейдите сразу к упражнениям этого
раздела.