PCRE正则表达式辅助 - 数值范围,减去一个数字

时间:2012-08-28 15:39:20

标签: regex pcre

我正在尝试解析400-699范围内的所有SIP代码的SIP消息,除了401(它用于客户端身份验证并用垃圾填充我们的日志)。

消息看起来像这样(小子集,有大量的代码,我想避免将它们全部列出):

SIP/2.0 400 Bad Request
SIP/2.0 401 Unauthorized
SIP/2.0 500 Internal Server Error
SIP/2.0 604 Does not exist anywhere

这是我目前的正则表达式(不起作用,仍然试图解决这个问题,请原谅,如果它不是最优雅的)

(?m)^SIP/2\.0\s(400|40[2-9]|4[1-90-9]|[5-60-90-9]).*$

我似乎无法找到PCRE是否支持字符类减法而不查找一堆PHP信息。任何帮助实现这项工作将非常有帮助。谢谢 你!

编辑:刚刚修改了REGEX。我离我很近,但它仍然包含401条消息。

1 个答案:

答案 0 :(得分:2)

[1-90-9]等于[0-9]你的脑海里似乎有不同的东西plz解释你的期望是什么