> I want to search the file until I find '/FontName /ACaslonPro-Semibold' > and then jump forward 7 lines where I expect to find '/FSType 8'. I > then want to continue searching from *that* point forward for the next > FontName/FSType pair. Unfortunately, I haven't been able to figure out > how to do this in Python, although I could do it fairly easily in a > batch file. Would someone care to enlighten me?
found_fontname = False font_search = '/FontName /ACaslonPro-Semibold' type_search = '/FSType 8' for line in file('foo.txt'): if font_search in line: found_fontname = True if found_fontname and type_search in line: print 'doing something with %s' % line # reset to look for font_search found_fontname = False or, you could sed -n '/\/FontName \/ACaslonPro-Semibold/,/\/FSType 8/{/\/FSType 8/p}' You omit what you want to do with the results when you find them...or what should happen when they both appear on the same line (though you hint that they're a couple lines apart, you don't define this as a "this is always the case" sort of scenario) -tkc -- http://mail.python.org/mailman/listinfo/python-list