美文网首页
IP地址 正则表达式

IP地址 正则表达式

作者: wuwind | 来源:发表于2016-10-13 09:25 被阅读0次

出处:http://www.cnblogs.com/txw1958/archive/2011/10/13/ip_address_regular_expression.html

IP地址的长度为32位,分为4段,每段8位,用十进制数字表示,每段数字范围为0~255,段与段之间用英文句点“.”隔开。例如:某台计算机IP地址为10.11.44.100。

分析IP地址的组成特点:250-255、200-249、0-199。
这三种情况可以分开考虑,

  1. 250-255:特点:三位数,百位是2,十位是5,个位是0~5,用正则表达式可以写成:25[0-5]
  2. 200-249:特点:三位数,百位是2,十位是04,个位是09,用正则表达式可以写成:2[0-4]\d
  3. 0-199:这个可以继续分拆,这样写起来更加简单明了.
    3.1. 0-9: 特点:一位数,个位是0~9,用正则表达式可以写成:\d
    3.2. 10-99: 特点:二位数,十位是19,个位是09,用正则表达式可以写成:[1-9]\d
    3.3. 100-199:特点:三位数,百位是1,十位是09,个位是09,用正则表达式可以写成:1\d{2}

于是0-99的正则表达式可以合写为[1-9]?\d,那么0-199用正则表达式就可以写成(1\d{2})|([1-9]?\d),这样0~255的正则表达式就可以写成(25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))
最后,前面3段加上句点.可以使用{3}重复得到,第4段再来一次同样的匹配,得到IP地址的正则表达式:

((?:(?:25[0-5]|2[0-4]\d|(?:1\d{2}|[1-9]?\d))\.){3}(?:25[0-5]|2[0-4]\d|(?:1\d{2}|[1-9]?\d)))

相关文章

  • java正则表达式判断 ip 地址是否正确

    java正则表达式判断 ip 地址是否正确 可以通过这个图来理解 ip 地址的正则表达式: java 的 ip 正...

  • Python 常用正则表达式

    抽取email的正则表达式 抽取phone_number的正则表达式 抽取身份证号的正则表达式 IP地址正则表达式...

  • Python常用正则汇总

    抽取email的正则表达式 抽取phone_number的正则表达式 抽取身份证号的正则表达式 IP地址 腾讯QQ...

  • IP地址 正则表达式

    出处:http://www.cnblogs.com/txw1958/archive/2011/10/13/ip_a...

  • day17作业

    import re 写一个正则表达式判断一个字符串是否是ip地址规则:一个ip地址由4个数字组成,每个数字之间用....

  • 18作 正则表达式

    import re 写一个正则表达式判断一个字符串是否是ip地址规则:一个ip地址由4个数字组成,每个数字之间用....

  • 2018-10-23 Day18作业

    import re 1. 写一个正则表达式判断一个字符串是否是ip地址 规则:一个ip地址由4个数字组成,每个数字...

  • 2018-10-23day18-作业

    import re 写一个正则表达式判断一个字符串是否是ip地址规则:一个ip地址由4个数字组成,每个数字之间用....

  • Day-18 - 作业(2018-10-24)

    import re 写一个正则表达式判断一个字符串是否是ip地址规则:一个ip地址由4个数字组成,每个数字之间用....

  • 2018-10-23作孽

    import re 写一个正则表达式判断一个字符串是否是ip地址规则:一个ip地址由4个数字组成,每个数字之间用....

网友评论

      本文标题:IP地址 正则表达式

      本文链接:https://www.haomeiwen.com/subject/qolwyttx.html