汉堡361 2022-06-13 10:46 采纳率: 100%
浏览 116
已结题

写一个正则表达式判断一个字符串是否是ipv4地址。

写一个正则表达式判断一个字符串是否是ipv4地址。
规则:一个ip地址由4个数字组成,每个数字之间用“.”连接。由于是以字符串的格式进行分析,所以可通俗理解成对单个数字字符进行范围截取,分别讨论1、2、3位情况分别讨论进行组合。
第一位只能取0,1,2;
第二位可以取09;
第三位:在第一位取0,1时,取值范围是0
9;而第一位取2时,第二位取05;第三位在第二位取5时,可取范围为05

  • 写回答

3条回答 默认 最新

  • A Python 萌新花花 2022-06-13 10:58
    关注
    
    import re
    
    a = "1.2.3.4"
    
    if re.match(r"[0-2][.][0-9][.][0-9][.][0-9]",a) != None:
        if re.match(r"[01][.][0-9][.][0-9][.][0-9]",a) != None:
            print("yes")
        elif re.match(r"2[.][0-5][.][0-9][.][0-9]",a)!= None:
            if re.match(r"2[.]5[.][0-5][.][0-9]",a) != None:
                print("yes")
            elif re.match(r"2[.][0-4][.][0-9][.][0-9]",a)!=None:
                print("yes")
        else:
            print("no")
    else:
        print("no")
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 6月21日
  • 已采纳回答 6月13日
  • 创建了问题 6月13日

悬赏问题

  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分