Pattern matching e Pattern substitution
L'ambito di utilizzo principale del linguaggio Perl, da molti ritenuto il suo campo d'applicazione "naturale", è quello relativo alla manipolazione delle stringhe attraverso operazioni di Pattern matching e di Pattern substitution.
Il Pattern matching consiste nella ricerca effettuata secondo determinati criteri di una deteminata sotto-stringa all'interno di una sequenza di caratteri; il Pattern substitution consiste invece nella sostituzione tramite un sotto-stringa di una sotto-stringa individuata all'interno di una sequenza di caratteri principale.
Semplificando all'estremo, se ricerchiamo all'interno della frase "Perl è Open Source" la parola "Perl", stiamo operando un'azione di Pattern matching; se sostituiamo la parola "Perl" con la stringa "PHP", stiamo operando un'azione di Pattern substitution (mi perdonino i puristi..).
I criteri tramite i quali operare ricerche e sostituzioni vengono stabiliti tramite dei costrutti detti espressioni regolari, queste ultime "codificano" caratteri e classi di caratteri in modo da mettere a disposizione dello sviluppatore uno strumento "universalmente valido" per operare su qualsiasi tipo di stringa.
Il matching in Perl segue questa sintassi:
m/pattern/opzioni;Proponiamo di seguito alcune possibili opzioni:
- g: opera il matching su tutti i possibili pattern;
- i: ignora determinati casi;
- m: testa una stringa come multi-linea;
- o: esprime un'unica valutazione;
- s: vede una stringa come singola linea;
- x: ignora gli spazi vuoti.
s/pattern/sostituzione/opzioni;Ad esempio:
s/hjhjhj/jkjkjk/;Sostituisce la stringa "hjhjhj" con "jkjkjk".
Opzioni per le sostituzioni:
- g: sostituzione d tutte le occorrenze;
- i: ignora determinati casi;
- e: valuta la stinga di sostituzione come un'espressione;
- m: testa una stringa come multi-linea;
- o: esprime un'unica valutazione;
- s: vede una stringa come singola linea;
- x: ignora gli spazi vuoti.
- << Lezione Precedente
- Indice Guida
- Lezione Successiva >>







