[Mailman-Users] topic regep exclude
Mark Sapiro
msapiro at value.net
Sat Sep 25 02:06:43 CEST 2004
Howard Moscovitz wrote:
>In the topic definition form, how can one specify a topic that is only
>messages that DOES NOT have the string [G2] in it.
see http://docs.python.org/lib/re-syntax.html
I would try
^(?!.*\[G2\])
or if case is not significant
^(?!.*\[[Gg]2\])
but this is only a suggested starting point. It seems to me that it
should work, but I don't know.
>Is there a way to test regeps without setting up a separte test list?
You could do a few interactive tests with Python or make a script.
For example:
[gpc_ms at clint ~]$ python2.3
Python 2.3.3 (#1, Mar 4 2004, 22:12:33)
[GCC 2.96 20000731 (Red Hat Linux 7.3 2.96-113)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import re
>>> m = re.match('^(?!.*\[G2\])', 'now is the time for [G3] to do something')
>>> m.group(0)
''
>>> m = re.match('^(?!.*\[G2\])', 'now is the time for [G2] to do something')
>>> m.group(0)
Traceback (most recent call last):
File "<stdin>", line 1, in ?
AttributeError: 'NoneType' object has no attribute 'group'
>>>
[gpc_ms at clint ~]$
In the first case, the re matches the null character at the beginning
of the line which is followed by not (anything followed by [G2]) so
the match succeeds and the matched string is null.
In the second case, the null character at the start of the string is
followed by (anything followed by [G2]) so the match fails and m.group
is undefined.
--
Mark Sapiro <msapiro at value.net> The highway is for gamblers,
San Francisco Bay Area, California better use your sense - B. Dylan
More information about the Mailman-Users
mailing list