Espressioni Regolari Basi
Vedi tutte le pagine e le modifiche recenti o scarica i sorgenti nella pagina
Abbiamo gia visto come si creano delle semplici espressioni regolari:
>> rgx= /esp/ => /esp/ >> rgx= Regexp.new("esp") => /esp/ora vediamo cose piu’ interessanti. Sappiamo che una stringa da cercare viene espressa cosi’:
/stringa/
ad esempio /via/ effettuera’ il match, cioe’ trovera una corrispondenza, sia in “ferrovia” che in “funivia”, che in “viadotto”.
Se volessimo solo le parole che finiscono con “via” dovremmo usare un carattere speciale (in genere si dicono metacaratteri), il dollaro (“$“).
>> rgx= /via$/ => /via$/ >> 'ferrovia' =~ rgx => 5 >> 'viadotto' =~ rgx => nilIl gemello di “
$” e’ “^”, che significa inizio della riga:
>> rgx= /^via/ => /^via/ >> 'ferrovia' =~ rgx => nil >> 'viadotto' =~ rgx => 0Ovviamente una espresione regolare puo’ usare entrambi i meccanismi insieme:
>> rgx= /^via$/ => /^via$/ >> 'viadotto' =~ rgx => nil >> 'ferrovia' =~ rgx => nil >> 'via' =~ rgx => 0Niente di assurdo, finora. Ovviamente le espressioni regolari sono molto piu’ potenti di cosi’, ma per questa pagina di wiki puo’ bastare :)