我很久以前就有这个疑问,一直无法理解。在 Suricata 放置规则的示例配置文件 drop.conf 中,出现以下示例行:
# Rules matching specifiers in this file will be converted to drop rules.
#
# Examples:
#
# 1:2019401
# 2019401
#
# re:heartbleed
# re:MS(0[7-9]|10)-\d+
最后一行的表达式是什么意思?MS(0[7-9]|10)-\d+
答案1
这个正则表达式MS(0[7-9]|10)-\d+
的意思是:
MS
: 文字MS
字符串。 :介于和
[7-9]
之间的字符类(包含 和 ),因此以下任一者:、或。:以下任意一个:、或。: 字面破折号 ( )。 : 1 个或多个数字,即任何-出现多次。7
9
7
8
9
(0[7-9]|10)
07
08
09
10
-
-
\d+
0
9
这匹配,例如:
MS07-2
MS10-13
这不匹配,例如:
MS06-2
MS10-i3
对于正则表达式的 Perl 风格(请注意,还有其他正则表达式风格),请参阅: