[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.python

Extract value from a attribute in a string

inFocus

1/23/2008 1:45:00 AM


Hello,

I am looking for some help in reading a large text tile and extracting
a value from an attribute? so I would need to find name=foo and
extract just the value foo which can be at any location in the string.
The attribute name will be in almost each line.

Thank you for any suggestions.
2 Answers

Gabriel Genellina

1/23/2008 3:14:00 AM

0

En Tue, 22 Jan 2008 23:45:22 -0200, <inFocus@sl.com> escribió:

> I am looking for some help in reading a large text tile and extracting
> a value from an attribute? so I would need to find name=foo and
> extract just the value foo which can be at any location in the string.
> The attribute name will be in almost each line.

In this case a regular expression may be the right tool. See
http://docs.python.org/lib/modu...

py> import re
py> text = """ok name=foo
.... in this line name=bar but
.... here you get name = another thing
.... is this what you want?"""
py> for match in re.finditer(r"name\s*=\s*(\S+)", text):
.... print match.group(1)
....
foo
bar
another

--
Gabriel Genellina

inFocus

1/23/2008 7:36:00 AM

0

On Wed, 23 Jan 2008 01:13:31 -0200, "Gabriel Genellina"
<gagsl-py2@yahoo.com.ar> wrote:

>En Tue, 22 Jan 2008 23:45:22 -0200, <inFocus@sl.com> escribió:
>
>> I am looking for some help in reading a large text tile and extracting
>> a value from an attribute? so I would need to find name=foo and
>> extract just the value foo which can be at any location in the string.
>> The attribute name will be in almost each line.
>
>In this case a regular expression may be the right tool. See
>http://docs.python.org/lib/modu...
>
>py> import re
>py> text = """ok name=foo
>... in this line name=bar but
>... here you get name = another thing
>... is this what you want?"""
>py> for match in re.finditer(r"name\s*=\s*(\S+)", text):
>... print match.group(1)
>...
>foo
>bar
>another

Thank you very much.