Raku kurss / Regulārās izteiksmes un gramatikas / Gramatikas / Gramatiku veidošana
Parsēšana ar parse
Lai gramatiku palaistu, izsauciet tās metodi .parse ar
analizējamo virkni:
grammar Pair {
token TOP { <key> '=' <value> }
token key { \w+ }
token value { \w+ }
}
my $m = Pair.parse('x=5');
say $m<key>; # 「x」
say $m<value>; # 「5」.parse atgriež sakritības objektu, kad gramatika sakrīt
ar visu virkni, un Nil, kad nesakrīt. Tā
kā jāsakrīt visai ievadei, enkuri ^ un $ nav
vajadzīgi — .parse šo prasību pievieno jūsu vietā:
say Pair.parse('x=5').defined; # True
say Pair.parse('x=').defined; # FalseSakritības objekts
darbojas gluži tāpat kā tie, ar kuriem sastapāties agrāk. Katrs
gramatikā izmantotais marķieris kļūst par nosauktu tvērumu, tāpēc
$m<key> un $m<value> dod
sakritušās daļas. Marķieri ligzdojas, tāpēc gramatika uzbūvē nelielu
sakritību koku — vēlākas sadaļas priekšmetu.
Prakse
Jūs gaida 1 viktorīna par šī temata saturu.
Kursa navigācija
← Likums TOP | Viktorīna — Gramatiku veidošana →
💪 Vai arī dodieties tieši uz šīs sadaļas
vingrinājumiem.