正则表达式
匹配实例
MAC Address
([0-9A-Fa-f][0-9A-Fa-f]:){5}([0-9A-Fa-f][0-9A-Fa-f])
[0-9A-Fa-f]
: 匹配 0-9 或 A-F 或 a-f
{5}
: 匹配前面的表达式 5 次
()
: 标记一个子表达式的开始和结束
上面例子的整体描述是:匹配 7A:
这样的子串 5 次,然后再匹配 7A
这样的字串一次。
进一步,上面的正则表达式可以改写为 ([0-9A-Fa-f]{2}:){5}([0-9A-Fa-f]{2})
IP Address
((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])
[]
: 标记一个中括号表达式的开始和结束
[0-5]
: 匹配字符范围,匹配指定范围内的任意字符。匹配 0-5。
[01]
: 匹配字符集合,匹配所包含的任意一个字符。匹配 0 或 1。
25[0-5]
: 匹配 250-255
2[0-4][0-9]
: 匹配 200-249
?
: 匹配前面的子表达式 0 次或 1 次
[01]?[0-9]?[0-9]
: 匹配 0-199
|
: 或,左右两个表达式匹配一个即可