En Sat, 17 May 2008 23:37:16 -0300, Dick Moores <[EMAIL PROTECTED]> escribió:
> I have a text file of phone numbers, which I'd like to search with a regex. > > fstr = "\sjoe\s" > regex = "^.*" + fstr + ".*$" > > fstr = "\sjoe\s" > regex = "r'^.*" + fstr + ".*$'" The r"..." is a signal to the parser - meaning "don't interpret the escape characters here". Note that the r is OUTSIDE the quotes. In your example, the escape characters are in fstr, so it should be written as r"\sjoe\s" Now, if you want "the lines that contain the word joe surrounded by space", just use: import re regex = r"\sjoe\s" p = re.compile(regex, re.I) f = open('phone.txt', 'r') for line in f: m = p.search(line) if m: print m.group() f.close() A file is its own line iterator (no need for readlines). And since you're iterating over lines, the regex doesn't have to test for it ^ and $. -- Gabriel Genellina -- http://mail.python.org/mailman/listinfo/python-list