Python regexp exclude problem

MRAB python at mrabarnett.plus.com
Wed Jun 1 13:12:23 EDT 2011


On 01/06/2011 15:20, Lutfi Oduncuoglu wrote:
> Hello,
>
> I am trying to write a script for adding ip address to a list. Those ip
> addresses coming thorough from our edge router.
> I have a line in may script like
>
>        if  any(s not in z2 for s
> in('144.122.','188.38','193.140.99.2','213.161.144.166','92.45.88.242')):
>            os.system(" echo " +z2+ " >> kapat_py_log")
>
> However ip addresses like  213.161.144.166 are added to the list. What
> can I do about this problem?
>
I think the problem is that you have "any(s not in ...)".

If you have the IP address "213.161.144.166", the string "144.122."
isn't in it, so the "any" returns True.

Try either "all(s not in z2 ...)" or "not any(s in z2 ...)".



More information about the Python-list mailing list