Arnaud Delobelle wrote:
micron_make <[EMAIL PROTECTED]> writes:

I am trying to parse a file whose contents are :

parameter=current
max=5A
min=2A

for a single line I used for line in file:
        print re.search("parameter\s*=\s*(.*)",line).groups()

is there a way to match multiple patterns using regex and return a
dictionary. What I am looking for is (pseudo code)

for line in file:
   re.search("pattern1" OR "pattern2" OR ..,line)

and the result should be {pattern1:match, pattern2:match...}

Also should I be using regex at all here ?

If every line of the file is of the form name=value, then regexps are
indeed not needed.  You could do something like that.

params = {}
for line in file:
    name, value = line.strip().split('=', 2)
params[name] = value
(untested)
I might add before you stumble upon the consequences:
   params[name.rstrip()] = value.lstrip()

Cheers,
RB
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to