• 正则基础


    import re
    
    #元字符 代表单词开头或者结尾  也就是单词的分界处  不代表标点符号,空格,换行符
    # pattern = re.compile(r'we')
    # s = pattern.findall('we We well welcome')
    # print(s)
    
    #匹配we和work之间的所有内容  用到元字符
    # . 匹配除了换行符的任意字符
    # * 含义是 * 前面的内容连续重复任意次 使得整个表达式被表达
    #.* 匹配任意数量不换行的字符
    # pattern = re.compile(r'we.*work')
    # s = pattern.findall('we We well welcome like work')
    # print(s)
    
    #匹配所有s开头的字母
    # pattern = re.compile(r'ww*')
    # pattern = re.compile(r'wd*')#可以匹配w100  ?????? 我想用^ $怎么办
    # s = pattern.findall('we We well w100 selcome like work')
    # print(s)
    
    #转义字符 元字符当普通字符用时需要转义  取消特殊字符(元字符)的特殊意义
    # pattern = re.compile(r'w*://w*.w*.w*/')#可以匹配w100  ?????? 我想用^ $怎么办
    # s = pattern.findall('https://www.baidu.com/')
    # print(s[0])
    
    # #重复  +重复一次或多次
    # pattern = re.compile(r'hellod+')
    # s = pattern.findall('hello1 hello100')
    # print(s)
    #
    # #匹配5到12个字的字符串
    # pattern = re.compile(r'^d{5,12}$')
    # s = pattern.findall('376100870')
    # print(s)
    #
    # #? 匹配0次或1次
    # pattern = re.compile(r'wed?')
    # s = pattern.findall('we we100')
    # print(s)
    
    #[]号 匹配[]中的任意字符
    # pattern = re.compile(r'[.?]')
    # s = pattern.findall('we w.e1?00')
    # print(s)
    
    #分支条件 | 满足任意一种规则都应该匹配成功
    #从左到右匹配每个条件 满足后就不会管其他条件了
    # pattern = re.compile(r'0d{2}-d{8}|0d{3}-d{7}')
    # s = pattern.findall('010-11223344 0123-2233445')
    # print(s)
    
    #从左到右匹配每个条件 满足后就不会管其他条件了
    # pattern = re.compile(r'd{3}|d{8}')
    # s = pattern.findall('11223344')
    # print(s)
    
    #匹配IP地址192.168.1.1
    pattern = re.compile(r'((d{1,3}).){3}d{1,3}')
    s = pattern.search('192.168.1.1')
    print(s.group())
    
    #IP中的每个数字不能大于255  ??????
    pattern = re.compile(r'((25[0-5]|2[0-4]d|[0-1]d{2}|[1-9]?d).){3}(25[0-5]|2[0-4]d|[0-1]d{2}|[1-9]?d)')
    s = pattern.search('256.168.1.1')
    print(s.group())
  • 相关阅读:
    双系统重装windows后,修复grub启动
    【转】GeoIP + PHP 完全指南
    【转】Linux压缩打包命令使用方法
    【转】linux screen 的使用 教程
    【转】tar打包命令详解
    【转】SecureCRT 显示乱码问题(总结)
    【转】Windows Server 2008 配置终端服务
    【转】vsftp 添加用户 简单步骤
    【转】用移动硬盘装WIN7出现NTLDR is missing
    【转】Qt集成到VS2008中 ( Qt4.5.1 + qtvsaddin1.0.0 )
  • 原文地址:https://www.cnblogs.com/zhangboblogs/p/8542187.html
Copyright © 2020-2023  润新知