模块:

  • 模块就是一组功能的集合,你要和某个东西打交道,而这个东西本身和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匹配所有的空白符 \n回车(换行符),\t制表符(Tab),空格
            • \W,\D,\S是上面三个元字符的反义
              • [\s\S][\d\D][\w\W]是三组全集 意思是匹配所有字符
            • \b表示单词的边界
          • ^和$
            • ^是匹配一个字符串的开始
            • $是匹配一个字符串的结束
          • . 表示匹配除了换行符之外的所有字符
          • [ ]只要出现在中括号内的内容都可以被匹配
          • [^]只要不出现在中括号中的内容都可以被匹配(有一些有特殊意义的元字符进入字符组中会恢复它本来的意义: . | [ ] ( ) )
          • a|b 或 符合a规则的或者b规则的都可以被匹配
          • 如果a规则是b规则的一部分,且a规则比b规则要苛刻/长,就把a规则写在前面(将更复杂的\更长的规则写在最前面)
          • ( ) 分组 表示给几个字符加上量词约束的需求的时候,就给这些量词分在一个组
        • 量词:
          • {n}表示这个量词之前的字符出现n次
          • {n,}表示这个量词之前的字符至少出现n次
          • {n,m}表示这个量词之前的字符出现n-m次
          • ? 表示匹配量词之前的字符出现0次或者1次 表示可有可无
          • + 表示匹配量词之前的字符出现1次或者多次
          • * 表示匹配量词之前的字符出现0次或者多次

Python_Mix*re模块,元字符,量词的更多相关文章

  1. re模块元字符

    #元字符在re模块中有特殊意义的字符,有:^ $. * + {} [] () | \ ^$ #表示开头结尾,注意:[^]表示取反 . #点,表示任意一个字符,包括空格(一个空白字符),\t(换行符). ...

  2. Python_Mix*OS模块,序列化模块种的json,pickle

    os.path.basename(path)返回path最后的文件名,如何path以/或\结尾,那么就会返回空值,即os.path.split(path)的第一个元素 ret = os.path.ba ...

  3. Python_Mix*random模块,time模块,sys模块,os模块

    random模块 作用: 生成随机数(整数,小数,从列表中随机抽值,打乱列表顺序) 常用函数: random.random( )生成随机小数 random.uniform( )取一个范围之间的小数 r ...

  4. Python_Mix*re模块基础方法,进阶,正则表达式的使用

    re模块import re 基础方法 findall:匹配所有 ,每一项都是列表中的一个元素,返回的是列表 search只匹配从左到右的第一个,得到的不是直接的结果,而是一个变量,通过这个变量的gro ...

  5. <摘录>perl正则表达式中的元字符、转义字符、量词及匹配方式

    Linux平台上被广泛使用的正则表达式库PCRE - Perl-compatible regular expressions,从其名字即可知道,PCRE提供的是一套与Perl中相兼容的正则表达式. 元 ...

  6. 【Perl】perl正则表达式中的元字符、转义字符、量词及匹配方式

    Linux平台上被广泛使用的正则表达式库PCRE - Perl-compatible regular expressions,从其名字即可知道,PCRE提供的是一套与Perl中相兼容的正则表达式. 元 ...

  7. python之正则表达式和re模块一

    摘要:正则表达式 re模块 一.正则表达式:只和字符串打交道,是一种用来约束字符串的规则 1.应用场景: 1,判断某一个字符串是否符合规则:注册页-判断手机号.身份证号 是否合法 注册某个账号的时候, ...

  8. 基础的正则表达式与re模块(2)

    一.元字符 字符组是元字符中的一个.在字符组中所有的字符都可以匹配任意一个字符位置上能出现的内容,如果在字符串中有任意一个字符是字符组中的内容,那么就是匹配上的项. [0-9]   [a-z]    ...

  9. 分分钟钟学会Python - 模块

    目录 模块 1 模块基础知识 2 random 返回随机生成的一个实数 3 hashlib 摘要算法模块 Hmac算法 4 time /datetime 时间模块 5 getpass 密码不显示(只能 ...

随机推荐

  1. CentOS 7编译OpenWRT

    安装必要的依赖 yum install subversion binutils bzip2 gcc gcc-c++ gawk gettext flex ncurses-devel zlib-devel ...

  2. SAP主数据文件版本号命名规范

    前提说明 最近在实施公司的SAP系统,需要对供应商,成品半成品原辅料,工艺路线,BOM等各种主数据进行收集,由于牵扯到多个部门进行合作整理数据,为了更方便进行文件版本的管理,特意学习下文件版本号命名规 ...

  3. JAVA随笔----浅谈lombok注解

    在Java开发中,注解可谓是帮了大忙.注解的使用帮助我们简化了代码,让代码更加简洁.今天就来谈谈常用的Lombok注解. lombok注解文档 lombok官方下载地址 先看一下lombok支持的一些 ...

  4. easyUI提交不跳转

    $('#loginForm').form('submit');为easyUI封装的异步提交方法,页面不跳转,可得到返回值. $('#loginForm').submit();为js自带原生表单提交方法 ...

  5. Git 帮助

    Git 配置 配置 git config --global user.name "..." git config --global user.email "...&quo ...

  6. (转载)Unity3D所要知道的基础知识体系大纲,可以对照着学习,不定期更新

    本文献给,想踏入3D游戏客户端开发的初学者. 毕业2年,去年开始9月开始转作手机游戏开发,从那时开始到现在一共面的游戏公司12家,其中知名的包括搜狐畅游.掌趣科技.蓝港在线.玩蟹科技.天神互动.乐元素 ...

  7. BalkanOI 2018 Parentrises(贪心+基础DP)

    题意 https://loj.ac/problem/2713 思路 对于 \(\text{P1}\) 的档,首先可以看出 \(O(n^3)\) 的方法,即用 \(O(n^3)\) 的 \(\text{ ...

  8. 【使用指南】ComponentOne Enterprise .NET开发控件集

    为方便广大 .NET开发人员更好的使用 ComponentOne Enterprise .NET开发控件集,葡萄城专门推出了 ComponentOne Enterprise 使用指南,该指南详细地介绍 ...

  9. JXOJ(基于UOJ)部署日志

    JXOJ部署日志 前些日子协助cyc.llf两位奆老部署了JXOJ,为方便日后维护我校OJ的同学,写篇日志做记录以日后查看. 一.准备: ​ 在尝试了多个不同OJ之后,我们最终选择了Universal ...

  10. Unity日常记录 - QualitySettings 性能设置

    unity打包时,可通过QualitySettings优化图像性能,这是最常设置也是最明显的图像性能体现 设置图形质量的水平,一般来说,质量是以牺牲性能为代价的,所以最好不要追求移动设备或旧硬件的最高 ...