LINUX 真是个非常 强大的操作系统 当然也非常的好玩. LINUX下的默认BASH SHELL本身就是个编程语言, 语言本身就支持正则表达式的匹配. 可以通过 =~ 来进行正则表达式的匹配. 匹配的结果存在了 数组 ${BASH_REMATCH[1]}, ${BASH_REMATCH[2]} 等等.
1 2 3 4 5 6 7 8 9 10 11 12 | #!/bin/bash ip="192.168.0.1" if [[ $ip =~ ^([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$ ]] then echo "匹配IP成功" echo ${BASH_REMATCH[1]} echo ${BASH_REMATCH[2]} echo ${BASH_REMATCH[3]} echo ${BASH_REMATCH[4]} else echo "匹配不成功" fi |
#!/bin/bash ip="192.168.0.1" if [[ $ip =~ ^([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$ ]] then echo "匹配IP成功" echo ${BASH_REMATCH[1]} echo ${BASH_REMATCH[2]} echo ${BASH_REMATCH[3]} echo ${BASH_REMATCH[4]} else echo "匹配不成功" fi
运行的结果是:
匹配IP成功 192 168 0 1
英文: https://helloacm.com/simple-example-use-bash-shell-to-match-ip-address/
GD Star Rating
loading...
本文一共 112 个汉字, 你数一下对不对.loading...
上一篇: 通过 .htaccess 设置静态资源缓存 来加速网站
下一篇: LINUX 下竖中指
扫描二维码,分享本文到微信朋友圈