Categorie
No Categoria

Espressioni regolari e alfabeto farfallino

Citando Wikipedia:

Il farfallino o alfabeto farfallino è un gioco linguistico per bambini. Si può intendere come una forma estremamente semplice di codice segreto e consiste nel raddoppiare ogni vocale con l’aggiunta di una f interposta: per esempio, a diventa afa, e diventa efe, e così via (quindi “ciao” diventa cifiafaofo). Viene detto “farfallino” perché la parola “farfalla” ha un suono simile a quello delle parole “codificate” seconda questo schema.

Un computer può aiutarci in maniera estremamente semplice per codificare il testo in questa maniera.

La regola, come abbiamo letto, è che dopo ogni vocale dobbiamo mettere una f e poi ancora la stessa vocale.

Ecco quindi il semplice codice PHP:

$farfallino = preg_replace('/([aeiou])/', '\1f\1', $testo);

Vediamo di spiegarlo: la sintassi della funzione preg_replace è:

preg_replace($espressione_regolare, $sostituzione, $stringa_su_cui_applicare);

L’espressione regolare, per regola, deve iniziare e finire con un delimitatore, io ho scelto la slash: /. Questa espressione prende, con [aeiou], ogni vocale, poi grazie alle parentesi tonde ogni vocale viene messa in un parametro numerico, per essere riutilizzata dopo.

Nella sostituzione, utilizzo questo parametro \1 per dire: “ok, metti qui la vocale che ho appena letto”. Quindi avrò: VOCALE f VOCALE, che tradotto in codice diventa appunto \1f\1.

Cifiafaofo afa tufuttifi!!!