Le espressioni regolari, note anche con il termine "regex", sono uno strumento efficiente e compatto per eseguire la ricerca e sostituzione di stringhe di caratteri all'interno di un testo. Le applicazioni sono molteplici, non solo nel campo della programmazione, ma anche nell'analisi ed elaborazione di grandi quantità di dati. Lavorate con file di testo o HTML di grosse dimensioni e non sapete come fare una particolare ricerca o sostituzione al loro interno? Volete recuperare con facilità delle informazioni da un file di log di un web server? Avete già sentito parlare delle regex ma non vi siete mai addentrati in questo affascinante mondo talvolta considerato (a torto) troppo complicato? Se la risposta è sì allora non potete perdervi questo articolo introduttivo sulle regex.
ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 1985 parole ed è riservato agli ABBONATI. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici che potrai leggere in formato PDF per un anno. ABBONATI ORA, è semplice e sicuro.
In pratica esistono due “stili” (o sintassi) relativi alla scrittura delle espressioni regolari: PCRE (Perl Compatible Regular Expression) e POSIX. Notepad++ include una funzionalità di ricerca e sostituzione che supporta le espressioni regolari di tipo PCRE, ma la compatibilità non è del 100%. PHP consente invece di utilizzare entrambe le sintassi (ad esempio preg_match e preg_replace per la PCRE). In questo articolo sono stati presentati i concetti basilari delle espressioni regolari, ma arriverà presto un seguito in cui verranno presentati esempi pratici di applicazione delle stesse con diversi strumenti di editing/programmazione (es. PHP, vim, Perl, .., ma anche mySQL).
Interessante risposta @slovati:disqus mi è capitato più di una volta di utilizzare le reg-ex in PHP e JS senza problemi di sorta ma poi accorgermi che con i vari editor qualcosa non tornava. Risolvetti aggirando il problema, come spesso si fa in programmazione quando una cosa proprio non vuole riuscire!
Purtroppo (o per fortuna) non conosco il Perl e quindi rimasi anche io con il dubbio (pensavo più ad una limitazione dell’editor).
Infine consiglio di avere sempre sottomano un cheat sheet sulle regex
http://www.cheatography.com/da…
Trovo sempre degli articoli interessanti sulla programmazione scritti da slovati e questo mi fa molto piacere perchè imparo un sacco di cose che non conoscevo 🙂
Grazie 🙂