s-w
asked on
Exchange 2010 Transport Rule Regex not working as expected
I'm trying to match a numeric header value to between 300 and 999.
The condition is "when the message header matches text patterns"
I'm using ^(3|4|5|6|7|8|9)\d\d$ based on https://technet.microsoft.com/en-us/library/aa997187%28v=exchg.141%29.aspx
It's working for 300-999, but it's also matching values like 85 and 215. It seems to match any value with at least 2 digits.
Is my regex correct? Does regex work correctly for header values?
The condition is "when the message header matches text patterns"
I'm using ^(3|4|5|6|7|8|9)\d\d$ based on https://technet.microsoft.com/en-us/library/aa997187%28v=exchg.141%29.aspx
It's working for 300-999, but it's also matching values like 85 and 215. It seems to match any value with at least 2 digits.
Is my regex correct? Does regex work correctly for header values?
ASKER
The [] and - syntax isn't shown as supported for the Transport Rules Regex. See the Exchange link. The regex I have works on test sites, it just doesn't work 100% of the time on Exchange.
ASKER CERTIFIED SOLUTION
membership
Create a free account to see this answer
Signing up is free and takes 30 seconds. No credit card required.
ASKER
^(3\d\d|4\d\d|5\d\d|6\d\d| 7\d\d|8\d\ d|9\d\d)$ works better. It missed a single 945 over several days.
It's not a fix for what seems to be an Exchange bug, but a reasonable workaround.
Thanks.
It's not a fix for what seems to be an Exchange bug, but a reasonable workaround.
Thanks.
You're welcome.
Here is the simplest regex.
Open in new window
You can test it here.
http://regexr.com/3asi6