On Mar 22, 5:03 pm, "Gabriel Genellina" <[EMAIL PROTECTED]>
wrote:
> En Sat, 22 Mar 2008 17:27:49 -0300, sgharvey <[EMAIL PROTECTED]>
> escribi�:
> Take a look at ConfigObjhttp://pypi.python.org/pypi/ConfigObj/
Thanks for the pointer; I'll check it out.
> I'm not sure you can process a config file in this unstructured way; looks
> a lot easier if you look for [sections] and process sequentially lines
> inside sections.
It works though... now that I've fixed up all my ugly stuff, and a
dumb logic error or two.
> The regular expressions look strange too. A comment may be empty. A
> setting too. There may be spaces around the = sign. Don't try to catch all
> in one go.
I didn't think about empty comments/settings... fixed now.
It also seemed simpler to handle surrounding spaces after the match
was found.
New version of the problematic part:
<code>
self.contents = []
content = {}
# Get the content in each line
for line in lines:
for name in patterns:
# Match each pattern to the current line
match = patterns[name].search(line)
if match:
content[name] = match.group(0).strip()
self.contents.append(content)
content = {}
</code>
new iniparsing.py
http://pastebin.com/f445701d4
new ini_regexen_dicts.py
http://pastebin.com/f1e41cd3d
> --
> Gabriel Genellina
Much thanks to all for the constructive criticism.
Samuel Harvey
--
http://mail.python.org/mailman/listinfo/python-list