Cursus Raku / Reguliere expressies en grammatica’s / Grammatica’s / Wat is een grammatica / Exercises / Jaar en maand
Oplossing: Jaar en maand
Hier is een mogelijke oplossing voor de taak.
Code
my regex year { \d ** 4 }
my regex month { \d ** 2 }
if '2025-06' ~~ / <year> '-' <month> / {
say $<year>;
say $<month>;
}🦋 Je kunt de broncode vinden in het bestand year-token.raku.
Uitvoer
「2025」
「06」Opmerkingen
Er worden twee benoemde regexes gedeclareerd, die elk één stuk van de datum beschrijven: een
yearvan vier cijfers en eenmonthvan twee cijfers.Het patroon combineert ze met een letterlijk streepje ertussen, en elk wordt onder zijn eigen naam gecapturd. Een groter patroon uit kleine benoemde onderdelen bouwen is precies het idee dat een grammatica formaliseert.