正则表达式

SHELL正则表达式判断IP地址是否合规

本文主要是介绍SHELL正则表达式判断IP地址是否合规,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
cat test.txt
a.b.c.d
11.1.1.1
9.9.9.9
8.8.8.8
127.0.0.1
20.02.04.01

获取IP地址
egrep '(^([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.)(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){2}([0-9]|[1-9]{2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])$' test.txt
egrep '
(^([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.)  获取IP地址的第一段
(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){2}  获取IP地址的第二段和第三段
([0-9]|[1-9]{2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])$'  test.txt   获取第四段

解释如下:
^            表示以....开头
[1-9]        表示1位数,取数字1-9范围
 |           表示或者
[1-9][0-9]   表示2位数,取数字10-99范围
1[0-9]{2}    表示3位数,取数字100-199范围
2[0-4][0-9]  表示3位数,取数字200-249范围
25[0-5]      表示3位数,取数字250-255范围
$            表示以....结尾

 

这篇关于SHELL正则表达式判断IP地址是否合规的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!