Cursus Raku / Reguliere expressies en grammatica’s / Reguliere expressies / Substitutie en vervanging
Transliteratie
Wanneer je afzonderlijke tekens wilt vervangen in
plaats van een heel patroon, gebruik je de transliteratieoperator
tr///. Hij koppelt elk teken in de eerste verzameling aan
het teken op dezelfde positie in de tweede verzameling:
my $s = 'hello';
$s ~~ tr/a..z/A..Z/;
say $s; # HELLOElke kleine letter wordt vervangen door de hoofdletter op de overeenkomstige positie in het tweede bereik, dus wordt het hele woord in hoofdletters gezet.
De twee verzamelingen worden teken voor teken op elkaar afgestemd. Een klein voorbeeld dat drie letters verschuift:
my $s = 'abcabc';
$s ~~ tr/abc/xyz/;
say $s; # xyzxyzHier wordt elke a een x, elke
b een y en elke c een
z.
Transliteratie is het juiste gereedschap voor koppelingen op
tekenniveau — hoofdlettergebruik veranderen, een klein alfabet
omwisselen of coderen. Voor alles wat van een patroon afhangt in plaats
van van afzonderlijke tekens gebruik je s///.
Praktijk
Maak de 1 quiz over de inhoud van dit onderwerp.
Cursusnavigatie
← Captures in de vervanging | Quiz — Substitutie →
💪 Of ga direct naar de oefeningen in deze
sectie.