Hi [...]
hm, that's wired I just tried it in python shell and it works but same code as script file fails for anyone who want to see for himself # package.vhd file bash % cat package.vhd library ieee; use ieee.std_logic_1164.all; package TEST123 is constant BASE End Package Test; # parser.py bash % cat parser.py #!/usr/bin/env python import sys, re reflags = re.DOTALL | re.MULTILINE | re.IGNORECASE pattern = re.compile(r'^\s*package\s+(?P<name>\w+)\s+is\s+(?P<content>.*?)\s+end(\s+package)?(\s+(?P=name))?\s*;', reflags) class PackageParser(object): def __init__(self, filename): self.package = file(filename).read() def parse(self): return pattern.search(self.package) if __name__ == "__main__": p = PackageParser("package.vhd") m = p.parse() if m is None: print "nothing" sys.exit(1) print m.group("content") print m.group("name") # testing bash % ./parser.py nothing ps: >>> sys.version '2.4.2 (#2, Mar 3 2006, 13:32:59) \n[GCC 3.2.2 20030222 (Red Hat Linux 3.2.2-5)]' Regards, Daniel -- http://mail.python.org/mailman/listinfo/python-list