[Python] string replace

Marco Beri marcoberi a gmail.com
Gio 6 Ott 2011 14:02:03 CEST


2011/10/6 roberto.preziusi a gmail.com <roberto.preziusi a gmail.com>

> Ciao,
> mi sono bloccato con una regular expression su python.
> Sto cercando di mettere i due punti ad un mac address e togliere quello
> finale, ma non riesco a far funzionare questa regexp che su sed va cosė
> bene:
>
> *da terminale:*
>
> echo "00A1B2AABBCC" | sed 's/\(..\)/\1:/g;s/:$//'
>
> *con python :*
>
> >>> mac = "00A0BCAABBCC"
> >>> mac.replace("\(..\)","\1:")
> '00A0BCAABBCC'
> >>> mac.replace("..","\1:")
> '00A0BCAABBCC'
> >>> mac.replace("..",":")
> '00A0BCAABBCC'
> >>> mac.replace("\.\.",":")
> '00A0BCAABBCC'
>
> dove sbaglio ?
>

A non usare le regex :-)

>>> import re
>>> ":".join(re.findall("..", mac))

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/20111006/6251f001/attachment.html>


Maggiori informazioni sulla lista Python