Il giorno 16/ott/2013, alle ore 13:27, Marco Giusti <marco.giu...@gmail.com> ha scritto:
> On Wed, Oct 16, 2013 at 01:09:26PM +0200, Giovanni Porcari wrote: >> Buongiorno a tutti >> >> >> Eseguendo questo codice in python 2.7.5 funziona correttamente >> ma in 2.7.2. e 2.7.3 python si impianta e non termina. >> >> Succede solo a me ? > > Che si pianti mi sembra normale. Ecco una letturina per la sera[1] > oppure il libro di Beri sulle regex. > > In pratica questa parte "(?P<nome>(?:\w*?\s*?)*?\w*)" ha un tempo di > eseguzione che è quadratico. Piuttosto mi stupische che la 2.7.5 > funzioni, è cambiato qualcosa nell'implementazione? > > [1] http://swtch.com/~rsc/regexp/regexp1.html > > ciao > >> import re >> >> t="CURRICULUM Rossi Mazzanti Vien Dal Mare Mario DF/433/43" >> r=r"^(?:CURRICULUM\s*)(?P<nome>(?:\w*?\s*?)*?\w*)\s*?(?P<codice>\w{2}/\w{3}/\w{2})\s*$" >> R=re.compile(r) >> a=re.search(R,t) >> print a.groups() Capisco che sia quadratico e mi sta bene ma parliamo di applicare la regex su una stringa di 55 caratteri. Credo che il problema sia 'benaltro' . E con ciò accusatemi di benaltrismo :D:D G _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python