Archive for March, 2007

Mar 24 2007

Regular expressions vol.1

Published by antonello under Ajax, Apache, Java, Php, Python, Regex, WebMaster

Validazione email - Email validation:
^[_a-zA-Z0-9-]+(.[_a-zA-Z0-9-]+)*@[_a-zA-Z0-9-]+(.[_a-zA-Z0-9-]+)*(.[a-z]{2,3})$

Parsing file di log di Apache - Apache log parsing:
(\d+\.\d+\.\d+\.\d+) (-|\w*) (-|\w*) \[(\d+\/\w+\/\d+):(\d+:\d+:\d+) -(\d\d\d\d)\] “([^"]*)” (\d+) (-|\d+) “([^"]*)” “(.*)”\s*\Z

se utilizzate python è estremamente utile compilare l’espressione regolare che ho appena scritto in questo modo:
myregex = re.compile('(?P\d+\.\d+\.\d+\.\d+) (?P-|\w*) (?P-|\w*) \[(?P\d+\/\w+\/\d+):(?P

in questo modo utilizzando questo codice:

log = self.regex.match(row)
log_line = log.groupdict()

nella variabile log_line otterrete un dizionario contenente come chiavi i valori che avete inserito nella fase di compilazione come ?P e come valore la relativa sottostringa, ad esempio log_line['ip'] = valore ip .

convert this post to pdf.

2 responses so far

Mar 23 2007

Categoria Regex

Published by antonello under News, Regex

Salve a tutti, ho deciso di aprire la categoria Regex, per fornire a tutti i programmatori, che come me non conoscono troppo a fondo il fantastico mondo delle espressioni regolari, un punto di ritrovo nel quale condividere le proprie conoscenze riportando espressioni regolari di uso più comune con esempi di utilizzo, che poi man mano provvederò ad elencare nei post di questa categoria.

Potrete inviarmi le vostre espressioni regolari via mail o inserendo un commento in un post qualunque della categoria regex.

Buona raccolta a tutti!

No responses yet