regexp match string with word1 and not word2

James Stroud jstroud at mbi.ucla.edu
Mon Apr 30 12:22:52 CEST 2007


Flyzone wrote:
> Hello,
> i have again problem with regexp :-P
> I need to match all lines that contain one word but not contain
> another.
> Like to do "grep one | grep -v two:"
> The syntax of the string is:
> (any printable char)two:(any printable char)one(any printable char)
> Example:
> Apr 30 00:00:09 v890neg0 two: [ID 702911 daemon.one] findings:
> blablabla
> 
> I tried with:
> .*[^t][^w][^o].*one.*
> but is not working, the string is always match and in other tries
> using "less logic" i get always some different match :-(
> 
> P.S: i can't have more re.search, so i just need ONE regexp
> 

The P.S: suggests homework, but this can't be homework because python 
regex won't do this, so your teacher gets an F if its homework. You 
require a negative look-behind assertion of variable length--not 
possible in python regex. You will have to use something else--or maybe 
you don't understand the homework problem.

James



More information about the Python-list mailing list