[Python] re e output non previsto

Marco Beri marcoberi a gmail.com
Dom 16 Giu 2013 23:07:49 CEST


2013/6/16 Adriano Barbieri <adrianobarb a yahoo.it>

> **
> Marco,
> se tolgo 'group(0)'
> m mi torna:
>
> <_sre.SRE_Match object at 0x05096860>
>
> Che me ne faccio?
>
> Ora pare di  capire che in questo punto del mio codice 'group(0) non dia
> alcun risultato, perché anche chiamando un gruppo inesistente, ad esempio
>  group(3), non se ne accorge nemmeno, mentre da console da un bel IndexError
>
> Pythoniani paradossi?
>

Adriano,
non ci capiamo proprio.

Dalla riga:

m=re.search('(\d\d/\d\d/\d\d\d\d|'')', x); m.group(0)

devi togliere l'ultima parte a partire dal punto e virgola compreso.
C'è un solo punto e virgola.
Non sto parlando della barra.
Non sto parlando degli apici.
Non sto parlando di group(0) e basta.
Sto parlando di questa parte:

       ; m.group(0)

La riga di codice che voglio ottenere è la seguente:

    m=re.search('(\d\d/\d\d/\d\d\d\d|'')', x)

Siccome nella riga seguente testi il valore di m, allora all'interno
dell'if, se vuoi, puoi usare m.group(0).

Se lo usi prima dell'if, come nella tua riga di codice originale, rischi
una eccezione se m vale None.
Tra l'altro, sempre nella tua riga originale, non serve a una beneamata
mazza metterlo dopo un punto e virgola.
Anzi, serve solo a scatenare a volte la suddetta eccezione.

Più chiaramente di così non so scriverlo...

Ciao.
Marco.

-- 
http://beri.it/ - Un blog
http://beri.it/i-miei-libri/ - Qualche libro
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20130616/eaa4decd/attachment-0001.html>


Maggiori informazioni sulla lista Python