zoukankan      html  css  js  c++  java
  • Python_Mix*re模块,元字符,量词

    模块:

    • 模块就是一组功能的集合,你要和某个东西打交道,而这个东西本身和Python没有关系,这个东西本身就存在,Python提供了一个功能的集合,专门负责和这个东西打交道.
    • 模块的类型:
      • 内置模块 不需要我们自己安装的 解释器自带的
      • 第三方模块 需要我们自己安装的模块
      • 自定义模块 我们自己写的模块
    • re模块:
      • 在Python中使用正则表达式
        • 正则表达式:
          • 是一种独立的规则,独立的语言,只和字符串打交道
          • 功能:
            • 从大段的文字中找到符合规则的内容
              • 比如说爬虫,从网页的字符串中获取你想要的数据
              • 日志分析.提取日志中你想要获取的数据
            • 判断某个字符串是否完全符合规则
              • 表单验证:手机号,qq号.邮箱,银行卡,身份证号.密码
          • 规则:
            • 规则 字符串 从字符串中找到符合规则的内容
          • 字符组[ ]写在括号中的内容,都出现在下面的某一个字符的位置上且都是符合规则的
            • [0-9]匹配数字
            • [a-z]匹配小写字母
            • [A-Z]匹配大写字母
            • [a-zA-Z]匹配大小写字母
            • [a-zA-Z0-9]匹配大小写字母+数字
            • [a-zA-Z0-9_]匹配数字字母下滑线
          • 元字符
            • 贪婪匹配/惰性匹配:默认贪婪/量词?惰性匹配
            • 和转义字母相关的元字符
              • w匹配数字字母下滑线 关键字(word) 如[a-zA-Z0-9_]
              • d匹配所有数字 关键字(digit) 如[0-9]
              • s匹配所有的空白符 回车(换行符), 制表符(Tab),空格
              • W,D,S是上面三个元字符的反义
                • [sS][dD][wW]是三组全集 意思是匹配所有字符
              • 表示单词的边界
            • ^和$
              • ^是匹配一个字符串的开始
              • $是匹配一个字符串的结束
            • . 表示匹配除了换行符之外的所有字符
            • [ ]只要出现在中括号内的内容都可以被匹配
            • [^]只要不出现在中括号中的内容都可以被匹配(有一些有特殊意义的元字符进入字符组中会恢复它本来的意义: . | [ ] ( ) )
            • a|b 或 符合a规则的或者b规则的都可以被匹配
            • 如果a规则是b规则的一部分,且a规则比b规则要苛刻/长,就把a规则写在前面(将更复杂的更长的规则写在最前面)
            • ( ) 分组 表示给几个字符加上量词约束的需求的时候,就给这些量词分在一个组
          • 量词:
            • {n}表示这个量词之前的字符出现n次
            • {n,}表示这个量词之前的字符至少出现n次
            • {n,m}表示这个量词之前的字符出现n-m次
            • ? 表示匹配量词之前的字符出现0次或者1次 表示可有可无
            • + 表示匹配量词之前的字符出现1次或者多次
            • * 表示匹配量词之前的字符出现0次或者多次
  • 相关阅读:
    《我与我的父辈》影评
    如何进行时间规划?
    内向者相关
    修己 0815
    loj 3102
    StringSequences
    解方程
    problem B
    uoj424 count
    fft相关的复习
  • 原文地址:https://www.cnblogs.com/mixw/p/9493421.html
Copyright © 2011-2022 走看看