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匹配所有的空白符 \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中使用正则表达式
Python_Mix*re模块,元字符,量词的更多相关文章
- re模块元字符
#元字符在re模块中有特殊意义的字符,有:^ $. * + {} [] () | \ ^$ #表示开头结尾,注意:[^]表示取反 . #点,表示任意一个字符,包括空格(一个空白字符),\t(换行符). ...
- Python_Mix*OS模块,序列化模块种的json,pickle
os.path.basename(path)返回path最后的文件名,如何path以/或\结尾,那么就会返回空值,即os.path.split(path)的第一个元素 ret = os.path.ba ...
- Python_Mix*random模块,time模块,sys模块,os模块
random模块 作用: 生成随机数(整数,小数,从列表中随机抽值,打乱列表顺序) 常用函数: random.random( )生成随机小数 random.uniform( )取一个范围之间的小数 r ...
- Python_Mix*re模块基础方法,进阶,正则表达式的使用
re模块import re 基础方法 findall:匹配所有 ,每一项都是列表中的一个元素,返回的是列表 search只匹配从左到右的第一个,得到的不是直接的结果,而是一个变量,通过这个变量的gro ...
- <摘录>perl正则表达式中的元字符、转义字符、量词及匹配方式
Linux平台上被广泛使用的正则表达式库PCRE - Perl-compatible regular expressions,从其名字即可知道,PCRE提供的是一套与Perl中相兼容的正则表达式. 元 ...
- 【Perl】perl正则表达式中的元字符、转义字符、量词及匹配方式
Linux平台上被广泛使用的正则表达式库PCRE - Perl-compatible regular expressions,从其名字即可知道,PCRE提供的是一套与Perl中相兼容的正则表达式. 元 ...
- python之正则表达式和re模块一
摘要:正则表达式 re模块 一.正则表达式:只和字符串打交道,是一种用来约束字符串的规则 1.应用场景: 1,判断某一个字符串是否符合规则:注册页-判断手机号.身份证号 是否合法 注册某个账号的时候, ...
- 基础的正则表达式与re模块(2)
一.元字符 字符组是元字符中的一个.在字符组中所有的字符都可以匹配任意一个字符位置上能出现的内容,如果在字符串中有任意一个字符是字符组中的内容,那么就是匹配上的项. [0-9] [a-z] ...
- 分分钟钟学会Python - 模块
目录 模块 1 模块基础知识 2 random 返回随机生成的一个实数 3 hashlib 摘要算法模块 Hmac算法 4 time /datetime 时间模块 5 getpass 密码不显示(只能 ...
随机推荐
- GitHub Toturial
GitHub Toturial Git Summary 1. 设置姓名和email git config --global user.name "YuboFeng" git con ...
- mycat 单库多表实现水平分片
环境 mycat : 192.168.126.128 root root mysql1: 192.168.126.129:3306 root lizhenghua mysql2: 192.168.12 ...
- opencv学习之路(32)、角点检测
一.角点检测的相关概念 二.Harris角点检测——cornerHarris() 参考网址: http://www.cnblogs.com/ronny/p/4009425.html #include ...
- testng timeout ant
问题:使用ant 指令运行testng.xml文件,@Test注释timeout未生效 解决:添加以下几个jar包
- HBase根据Rowkey批量查询数据JAVA API(一次查多条,返回多个记录)
最近在生产中遇到了一个需求,前台给我多个rowkey的List,要在hbase中查询多个记录(返回给前台list).在网上也查了很多,不过自己都不太满意,filter的功能有可能查询结果不是准确值,而 ...
- shell编程(七)之字符串处理
字符串切片 ${var:offset:number} 取字符串的最右侧几个字符: ${var: -length} 注意: 冒号后必须有一个空白字符 #!/bin/bash var="chen ...
- 一键快速部署CodeBlocks的EGE图形库工具
大一下学期,学完了c语言的基本内容, 也就开始开发项目了,此时一个图形界面就比较重要了,c语言中不提供图形界面,一般这些是用的其它开发的图形库,如 Easyx .ege等. 本文就提供 Codeblo ...
- Go-For Range 性能研究
文章转载地址:https://www.flysnow.org/2018/10/20/golang-for-range-slice-map.html 如果我们要遍历某个数组,Map 集合.Slice 切 ...
- Vue-admin工作整理(六):路由元信息
路由源信息:每一个路由对象,可以配置一个meta字段,它里面可以存放一些我们定义的信息,比如说页面是否需要一个权限 to.meta && setTitle(to.meta.title) ...
- VS code 推荐插件
vs code 中eslint语法检测,保存即可格式化 具体查看:(https://www.jianshu.com/p/23a5d6194a4b) { // vscode默认启用了根据文件类型自动设置 ...