8 def __init__ (self,input,output=None):
13 comment=re.compile("\s*#.*")
14 id="[\w\.-]+|\'[^\']+\'"
15 id3="\s*(?P<groupname>%s)\s+(?P<tagname>%s)\s+(?P<value>%s\s*)"%(id,id,id)
20 outfile = open(self.output,"w")
25 CREATE TABLE mgn_site_nodegroup (groupname text, tagname text, value text);
27 for line in file(self.input).readlines():
29 if Nodegroups.comment.match(line):
31 match=Nodegroups.line.match(line)
33 print "%s:%s:%d: syntax error %s"%(
34 sys.argv[0],self.input,lineno,line)
40 [groupname,tagname,value]=[normalize(x) for x in match.groups()]
43 "INSERT INTO mgn_site_nodegroup (groupname,tagname,value) VALUES (%s,%s,%s);"%\
44 (groupname,tagname,value)
45 if outfile != sys.stdout:
48 if __name__ == '__main__':
49 if len(sys.argv) not in [2,3]:
50 print 'Usage:',sys.argv[0],'input [output]'
57 Nodegroups(input,output).parse()