"Mark Lawrence" <[email protected]> wrote in message
news:[email protected]...
> [email protected] wrote:
>> For example, I have a string "#a=valuea;b=valueb;c=valuec;", and I
>> will like to take out the values (valuea, valueb, and valuec). How do
>> I do that in Python? The group method will only return the matched
>> part. Thanks.
>>
>> p = re.compile('#a=*;b=*;c=*;')
>> m = p.match(line)
>> if m:
>> print m.group(),
>
> IMHO a regex for this is overkill, a combination of string methods such as
> split and find should suffice.
>
> Regards.
>
For the OP, it can be done with regex by grouping:
p = re.compile(r'#a=(*);b=(*);c=(*);')
m = p.match(line)
if m:
print m.group(1),
m.group(1) has valuea in it, etc.
But this may not be the best way, but it is reasonably terse.
--
http://mail.python.org/mailman/listinfo/python-list