>>> import re >>> lista = ['hello','goodbye','bubblegum'] >>> regex = re.compile('|'.join(lista)) >>> lines = '''line1: blah blah aldkfslfjlajf hello ... line2: blah blah dkajfldjfjkdsfalj zippo ... line3: blah blah lkdsjalkfjkj bubblegum ... line4: blah blah skdjflsdjlkj ditto''' >>> lines = lines.split('\n') >>> for line in lines: ... if not regex.search(line): ... print line ... line2: blah blah dkajfldjfjkdsfalj zippo line4: blah blah skdjflsdjlkj ditto >>>
Kent
Tzu-Ming Chern wrote:
Hi Python Tutors,
Is there a more elegant solution to matching multiple regular expressions?
An example would be:
lista = ['hello','goodbye','bubblegum'] # lista would contain my regular expressions I want to match
My file would look something like this:
line1: blah blah aldkfslfjlajf hello line2: blah blah dkajfldjfjkdsfalj zippo line3: blah blah lkdsjalkfjkj bubblegum line4: blah blah skdjflsdjlkj ditto
What I want to do is to only print out those lines that don't contain
those patterns included in lista. So that would be lines 2 and 4.
Any suggestions?
cheers, tzuming
_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor