zoukankan      html  css  js  c++  java
  • 正则表达式

    正则表达式匹配单个字符

     代码 功能
     . 匹配任意1个字符(除了 )
     [ ] 匹配[ ]中列举的字符
     d 匹配数字,即0-9
     D 匹配非数字,即不是数字
     s 匹配空白,即 空格,tab键
     S 匹配非空白
     w 匹配非特殊字符,即a-z、A-Z、0-9、_、汉字
     W 匹配特殊字符,即非字母、非数字、非汉字
    --------------------------------------------------------------------------------------
    正则表达式匹配多个字符
     代码 功能
     * 匹配前一个字符出现0次或者无限次,即可有可无
     + 匹配前一个字符出现1次或者无限次,即至少有1次
     ? 匹配前一个字符出现1次或者0次,即要么有1次,要么没有
     {m} 匹配前一个字符出现m次
     {m,n} 匹配前一个字符出现从m到n次
    --------------------------------------------------------------------------------------
    正则表达式匹配开头和结尾的正则表达式
     
     代码 功能
     ^ 匹配字符串开头
     $ 匹配字符串结尾
    --------------------------------------------------------------------------------------
    正则表达式匹配分组相关正则表达式
     
     代码 功能
     | 匹配左右任意一个表达式
     (ab) 将括号中字符作为一个分组
      um 引用分组num匹配到的字符串
     (?P<name>) 分组起别名
     (?P=name) 引用别名为name分组匹配到的字符串
    --------------------------------------------------------------------------------------
    re模块的高级用法
     1.search匹配出表达式 
      匹配水果个数:match_obj = re.search("d+", "水果20个,苹果10个")
     2.知道使用findall查找多个字符
      split 根据匹配进行切割字符串,并返回一个列表
      match_obj = re.split(",|:", "张三,李四:王五:赵柳", maxsplit=2)
      ['赵三', '李四', '王五:赵柳']
     3.知道使用sub替换数据
     4.知道使用split根据多个标识符进行分割数据
    --------------------------------------------------------------------------------------
    python贪婪和非贪婪
     Python里数量词默认是贪婪的,总是尝试匹配尽可能多的字符;
     非贪婪则相反,总是尝试匹配尽可能少的字符。
     在"*","?","+","{m,n}"后面加上 ? ,使贪婪变成非贪婪。
    --------------------------------------------------------------------------------------
    r的作用
     r 表示原生字符串,数据里面的反斜杠不需要进行转义,针对的只是反斜杠
    --------------------------------------------------------------------------------------
  • 相关阅读:
    回文子序列数 编程之美 hihocoder 资格赛 第二题 2015年
    斐波那契数列 加速 骨牌覆盖 mod 19999997
    编程语言发展史
    document.getElementById和document.write
    正则表达式验证
    reg-replace
    正则表达式
    DOM&BOM
    pseudo-class与pseudo-element的相同点与不同点
    网格(grid)
  • 原文地址:https://www.cnblogs.com/lab-zj/p/12166441.html
Copyright © 2011-2022 走看看