TtfnJohn wrote: > I have two small scripts that while on the surface should both work > the problem is they don't. > > Here's the first one: > import re > > testString = 'Thap,fpvi,[EMAIL PROTECTED]:[EMAIL PROTECTED] > dialin.net:[EMAIL PROTECTED]::::::' > > reobj = re.compile(r"(.*),(.*),(.*):::(.*):::(.*)") > > testString1 = reobj.search(testString) > > if testString1: > match0 = testString1.group(0) > match1 = testString1.group(1) > > This works as expected with any number of seed strings. > > Now then: > > This one consistently fails even though it should work, as near as I > can tell. > import os > import re > import readline > from buzhug import Base > > # initialize a few things > voiceuser = Base('voiceuser') > # now to create & open the database. If the database already exists > this will > # simply open it > voiceuser.create(('name',str),('ircname',str),('first',str), > ('second',str),('third',str),('fourth',str),('fifth',str), > ('sixth',str),('seventh',str),mode="open") > > #next is to open the file we'll read from and then process it and add > the names > # to the database > # the first step is to compile the regular expression > testString = re.compile(r"(.*),(.*),(.*):::(.*):::(.*)") > voiceList = open('friendslist','r') > > while 1: > line = voiceList.readline() > if not line: > break
The above is spelt for line in voiceList: > print len(line) > line = line[:-2] Change that to line = line[:-1] or, more robust, line = line.rstrip() Otherwise you might be clipping the last ":". Peter -- http://mail.python.org/mailman/listinfo/python-list