TL;DR - regex parsing in the old tool seems broken, but it seems work-aroundable by using SWQL queries in the web-based alerting UI. Thanks jm_sysadmin!
I'm trying to set up a syslog alert with a regex that uses a negative lookahead that should hit on anything containing string1 and not (string2 or string3). This works in the testers in regex101.com and regextester.com, but in the alert, it does not trigger at all.
I have a catchall alert that just looks for string1 without the other stuff, and that works fine, but it's noisey.
(?:(?!.*Gi3\/0\/27 and port Gi3\/0\/23)(?!.*Gi3\/0\/23 and port Gi3\/0\/27))flap
This should hit on anything that contains "flap" and does NOT contain "Gi3/0/23 and port Gi3/0/27" or "Gi3/0/27 and port Gi3/0/23"
E.g. if I do a "send log flap flap flap" on the device, this regex should hit. It doesn't.
And yeah, unfortunately, some flapping is expected, the way some of our wireless controllers currently work.
Example of how I want it to work:

...but it never hits on anything, as far as I can tell. I have tried adding "/" at the beginning and "/g" at the end of the definition - doesn't help.
Anyone know of a way to get this going?