Raku kurss / Pielikums 🆕 / Tipi un teksta mašīnas / Regulārās izteiksmes un gramatikas / Exercises / Gramatika pilniem vārdiem
Risinājums: Gramatika pilniem vārdiem
Šeit ir iespējams risinājums uzdevumam.
Kods
grammar FullName {
token TOP { <first> \s+ <last> }
token first { \w+ }
token last { \w+ }
}
my $match = FullName.parse('Grace Hopper');
say ~$match<first>;
say ~$match<last>;🦋 Atrodiet programmu failā grammar-fullname.raku.
Izvade
Grace
HopperKomentāri
Marķieris
TOPir vieta, kur parsēšana sākas; tas uz pārējiem marķieriem atsaucas pēc nosaukuma ar<first>un<last>, kas kļūst par atslēgām atbilstībā.$match<first>ir atbilstības objekts; prefikss~to pārvērš vienkāršā salāgotajā tekstā.