首页 > 代码库 > 正则表达式のip地址匹配の小见
正则表达式のip地址匹配の小见
对于IP地址我们先将其划分范围
对于每一个地址我们都将其划分成三段。每一段都确定它的范围
对于第一段它的范围是1-254
对于第二,三段它的范围是0-255
对于第四段它的范围是1-254
我们需要注意的是\b 与$ ^的区别
1\b强调的是在你的所查找的关键字中的位置 而 $^则是强调在你的关键字所匹配的行中的位置
2同时我们一样可以注意到
ifconfig | egrep --color ‘\b([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-4])\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0^C][0-9]|2[0-4][0-9]|25[0-5])\.([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-4])\b‘
[root@chris ~]# ifconfig | egrep --color ‘\b([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-4])\.(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){2}([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-4])\b‘
需要注意的是标红的这一段 我们如果把\.放在最后三位数的后面,并同时处在括号之内的话 比如说下面这样
[root@chris ~]# ifconfig | egrep --color ‘\b([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-4])\.(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]\.){2}([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-4])\b‘
那么第二三个字段就变成 一位数或者两位数或者三位数加点
而不是一位数加点或者两位数加点或者三位数加点
正则表达式のip地址匹配の小见