Corso di Raku / Espressioni regolari e grammatiche / Espressioni regolari / Sostituzione e rimpiazzo
Traslitterazione
Quando vuoi rimpiazzare singoli caratteri invece di
uno schema intero, usa l’operatore di traslitterazione
tr///. Mappa ogni carattere del primo insieme sul carattere
nella stessa posizione del secondo insieme:
my $s = 'hello';
$s ~~ tr/a..z/A..Z/;
say $s; # HELLOOgni lettera minuscola viene rimpiazzata dalla lettera maiuscola nella posizione corrispondente del secondo intervallo, quindi tutta la parola diventa maiuscola.
I due insiemi vengono appaiati carattere per carattere. Un piccolo esempio che sposta tre lettere:
my $s = 'abcabc';
$s ~~ tr/abc/xyz/;
say $s; # xyzxyzQui ogni a diventa x, ogni b
diventa y e ogni c diventa z.
La traslitterazione è lo strumento giusto per le mappature a livello
di carattere: cambiare le maiuscole, scambiare un piccolo alfabeto o
codificare. Per qualunque cosa dipenda da uno schema invece che da
singoli caratteri, usa s///.
Pratica
Risolvi 1 quiz sul contenuto di questo argomento.
Navigazione del corso
← Catture nel rimpiazzo | Quiz — Sostituzione →
💪 Oppure vai direttamente agli esercizi di questa
sezione.