re:正则小总结

正则表达式

  1. 使用
    1. Import  re
  2. 包含
    1. 匹配模式
      1. 贪婪模式
      2. 非贪婪模式
    2. 字符
      1. 匹配字符
      2. 转义字符
  3. 常见的函数:
    1. Search:匹配在字符串中搜索到的第一个值,匹配成功返回match对象,匹配失败则返回none。例如:reg= r"(\d)"   m = re.search(reg,"aaa")  输出m为none
    2. 因为\d是匹配数字,而m给出的只有代码,导致匹配失败

      Match:从字符串的起始位置开始匹配,但是只能匹配到第一个符合条件的值,如果匹配不成功返回none

      Findall:寻找在整个字符串中匹配的值,符合条件的全部返回

      Split:切分,可以切分单字符,或者指定多个字符,指定多个字符需要放在【】当中,比如切分,。就需要r"([,.])"

      Sub:相当于正则里的替换,

      例如:m = re.sub(r"(\d)","2","111,333,444"),意思就是把选中的内容全部替换成2

      compile:用于编译正则表达式,生成一个正则对象,供两个函数使用

          例如:mstr= "<a> <h2> hello <a> <h2>"

      mpat =r"<(?p<aa>\w{1})><?p<hh>\w{2}>(.*)</(?p=hh)><(?p=aa)>"

      Ret = re.match(mpat,mstr)

  4. 正则表达式单个字符
    1. 。:匹配任意一个字符(除了\n)
    2. []  :匹配[]中列举的字符

      \d:匹配数字,0-9

      \D:匹配非数字

      \s:匹配空白,就是空格、tal键等

      \S:匹配非空白

      \w:匹配单词字符:a-z,A-Z,0-9,_

      \W:匹配非单词字符

  5. 正则表达式数量修饰符
    1. *:匹配前一个字符出现0次或者无限次,这个字符可以出现也可以不出现
      1. 例如:re.findall("(.*)在不违反",old_value)
    2. +:匹配前一个字符出现1次或者无限次,这个字符至少出现一次
      1. 例如:re.findall("(.+)在不违反",old_value)
    3. ?:匹配前一个字符出现1次或者0次,要么有,要么没有
    4. {m}:匹配前一个字符出现m次
    5. {m,}:匹配前一个字符至少出现m次
    6. {m,n}:匹配前一个字符出现从m到n次
  6. 补充
    1. 一个括号代表一个小分组,例如:
  7. 贪婪模式

    输出结果就是全部 

  8. 非贪婪模式

    输出结果就是一个 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值