[Python-es] Obtener el texto plano de un pango markup
Ramiro
rmrsndvl en yahoo.com.ar
Sab Sep 4 21:33:11 CEST 2010
>>El 4 de septiembre de 2010 04:00, Ramiro <rmrsndvl en yahoo.com.ar> escribió:
>>
>> Hola
>>
>> Estoy buscando una función, si es que la hay, que me devuelva el texto SIN >atributos.
>>
>> Ej:
>>
>> En una lista voy coloreando valores de esta manera:
>>
'<span
foreground="#FF0000"><b>HOLA</b></span>' (con esto
aparecería HOLA >en rojo y en negrita en un treeview)
>>
>> Lo que yo busco es una función (¿XML?) que me saque los atributos y me devuelva >solo la cadena 'HOLA'
>>
>>
Me hice una función en python que me saca todo lo contenido entre los
caracteres < >y >, pero al hacer busquedas con la lisa muy llena se
nota un poco lento, si existiese >esta función escrita en C sería mejor.
>>
>>
>> esta es mi func:
>>
>> def get_text_markup(txt):
>>
>> for i in range (1000):
>> pos1 = txt.find('<')
>> if pos1 == -1:
>> return txt
>>
>> pos2 = txt.find('>')
>> if pos2 == -1:
>> return txt
>> elif pos2 < pos1:
>> return txt
>> txt = txt [:pos1] + txt[pos2+1:]
>> raise ValueError
>>
>>
>> Nada más, SALUDOS
>>
>>
>--- El sáb 4-sep-10, Luis Miguel Morillas <morillas en gmail.com> escribió:
>Usando amara:
>
>>>> from amara import bindery
>>>> doc = bindery.parse('<span foreground="#FF0000"><b>HOLA</b></span>' )
>>>> print doc.span
>HOLA
>>>> unicode(doc.span)
>u'HOLA'
>>>> unicode(doc)
>
>
Muchas gracias, era eso lo que buscaba.
Saludos
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20100904/c5ea64f0/attachment.html>
Más información sobre la lista de distribución Python-es