Cursus Raku / Reguliere expressies en grammatica’s / Reguliere expressies / Bijwoorden / Exercises / Alle getallen

Oplossing: Alle getallen

Hier is een mogelijke oplossing voor de taak.

Code

my @numbers = 'x=5, y=10, z=15' ~~ m:g/\d+/;
say @numbers.map(*.Str).join('+');

🦋 Je kunt de broncode vinden in het bestand all-numbers.raku.

Uitvoer

5+10+15

Opmerkingen

  1. \d+ matcht een hele reeks cijfers, en :g verzamelt elke zulke reeks — hier 5, 10 en 15.

  2. Elke match is een matchobject, dus .map(*.Str) maakt er kale strings van voordat ze met + aaneengeregen worden.

Cursusnavigatie

Alle getallen   |   Substitutie en vervanging