正则表达式匹配IP地址

1. IP段都表示一个字节,即只能在 0~255之间。

    所以一个正确的IP应该是:(0~255).(0~255).(0~255).(0~255)

    通过观察可以发现可以将整个IP分为两部分匹配,即:(0~255) 和 .(0~255) 3次

2. 0~255可以分两部分匹配 0~199 和 200~255

   a) 0~199 正则表达式为  [0-1]?\d{1,2} 

  • [0-1]?    表示匹配 0或1一次或零次
  • \d          表示匹配任意一个十进制数字,即 0~9
  • {1,2}      表示匹配上一个元素至少一次,最多两次,这里就是 \d一次或两次

   b) 200~255 正则表达式为  2((5[0-5])|([0-4]\d)),又可以分为两部分 200~249 和 250~255

  • 2          表示必须以2开头
  • 5[0-5]   表示匹配 50~55 之间的数 
  • [0-4]\d  表示 00~49 之间的数

3.  a) (0~255) 的正则表达式可以写为  (2((5[0-5])|([0-4]\d)))|([0-1]?\d{1,2})

     b) .(0~255) 的正则表达式可以写为 \.((2((5[0-5])|([0-4]\d)))|([0-1]?\d{1,2}))

     c) .(0~255) 匹配3次的正则表达式可以写为 (\.((2((5[0-5])|([0-4]\d)))|([0-1]?\d{1,2}))){3}

4.  正则表达式为  ^((2((5[0-5])|([0-4]\d)))|([0-1]?\d{1,2}))(\.((2((5[0-5])|([0-4]\d)))|([0-1]?\d{1,2}))){3}$ 

  • ^ 表示匹配字符串开头
  • $ 表示匹配字符串结尾 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bridge_go

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值