Курс по Raku / Регулярни изрази и граматики / Граматики / Токени и правила / Exercises / Правило с интервали
Решение: Правило с интервали
Ето едно възможно решение на задачата.
Код
grammar Phrase {
rule TOP { <word> <word> <word> }
token word { \w+ }
}
say Phrase.parse('the quick fox').defined;🦋 Намерете програмата във файла spaced-rule.raku.
Изход
TrueКоментари
Понеже
TOPеrule, всеки интервал, записан между извикванията на<word>, изисква празен знак във входа.Низът
'the quick fox'има интервали между трите думи, така че се разбира. АкоTOPбешеtoken, интервалите в шаблона щяха да се пренебрегнат и разборът щеше да се провали.