Cursus Raku / Reguliere expressies en grammatica’s / Reguliere expressies / Substitutie en vervanging / Exercises / Maskeer de cijfers
Oplossing: Maskeer de cijfers
Hier is een mogelijke oplossing voor de taak.
Code
my $orig = 'PIN 1234';
say S:g/\d/#/ given $orig;
say $orig;🦋 Je kunt de broncode vinden in het bestand mask-digits.raku.
Uitvoer
PIN ####
PIN 1234Opmerkingen
De
S///met hoofdletter doet hetzelfde werk alss///maar geeft een nieuwe string terug in plaats van de variabele ter plaatse te wijzigen. Met:gvervangt hij in de teruggegeven kopie elk cijfer\ddoor een#. Hij wordt metgivenop$origtoegepast, wat die string als onderwerp instelt.$origdaarna afdrukken laat zien dat die nog steedsPIN 1234bevat — anders dan bijs///bleef het origineel onaangeroerd.