Курс по Raku / Регулярни изрази и граматики / Регулярни изрази / Наречия
Значещи интервали
Вътре в регулярния израз интервалите обикновено се пренебрегват — те
са там само за да направят шаблона четим. Затова /foo bar/
съвпада с foobar. Понякога обаче наистина искате интервалът
в шаблона да означава „тук има празен знак“. Наречието :s
(съкращение от :sigspace, „значещ интервал“) прави точно
това:
say so 'foo bar' ~~ /:s foo bar/; # True
say so 'foobar' ~~ /:s foo bar/; # FalseС :s интервалът между foo и
bar в шаблона изисква празен знак между двете думи в низа.
Броят се един или повече интервала (или табулации), така че поредицата
от интервали в 'foo bar' съвпада.
Значещите интервали стават особено важни при граматиките, където
позволяват да пишете шаблони, които се четат като езика, който
разбирате. Ще ги срещнете отново като разликата между token
и rule.
Практика
Направете 1 тест върху съдържанието на тази тема.
Навигация в курса
← Глобално съпоставяне | Тест — Наречия →
💪 Или преминете направо към упражненията в този
раздел.