Cursus Raku / Reguliere expressies en grammatica’s / Grammatica’s / Actieklassen / Exercises / Een actie voor hoofdletters
Oplossing: Een actie voor hoofdletters
Hier is een mogelijke oplossing voor de taak.
Code
grammar WordG {
token TOP { <word> }
token word { \w+ }
}
class UpcaseAction {
method TOP($/) { make $<word>.Str.uc }
}
say WordG.parse('hello', actions => UpcaseAction.new).made;🦋 Je kunt de broncode vinden in het bestand upcase-action.raku.
Uitvoer
HELLOOpmerkingen
De grammatica captureert het woord; de actieklasse beslist wat ermee gebeurt.
$<word>.Strgeeft de gematchte tekst en.uczet die in hoofdletters, en dat is watmakeop de match bewaart.
Cursusnavigatie
← Een actie voor hoofdletters | Eén grammatica, twee actieklassen →