python基础-正则使用
时间:2022-07-22
本文章向大家介绍python基础-正则使用,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
正则匹配
[table id=1 /]
简单介绍
re.match
re.match尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回None
示例
import re
content = 'Hello asdasd 123124 aaaaa python'
result = re.match('^Hello.*d+.*python$',content)
print(result)
结果
<re.Match object; span=(0, 32), match='Hello asdasd 123124 aaaaa python'>
泛匹配
import re
content = 'Hello asdasd 123124 aaaaa python'
result = re.match('^Hello.*(d+).*python$',content)
print(result.group(1)) #result.group(n)为匹配的目标
贪婪匹配
简单理解就是能匹配多少就匹配多少,就像上例中的匹配方式,匹配结果为4
非贪婪匹配
非贪婪匹配很常用,往往能得到我想要的结果,写法如下
仔细看没啥区别,只是在目标匹配的内容外加了一个?,这样即表示非贪婪匹配
当匹配的内容里出现换行时该如何匹配呢?
加一个参数,re.S即可
如果使用正则匹配,尽量使用泛匹配,非贪婪模式,有换行则使用re.S
re.search
除了rs.match方法,还有re.search,使用re.search时便非常方便了,因为它是扫描整个字符串并返回第一个成功的匹配,比如我们查找一些关键字,该关键字并没有在行首,可能在中间位置,此时在使用re.match时便匹配不到了。
可以看到使用re.match是匹配不到的,换re.search试试
所以:能尽量使用re.search就不要使用re.match
re.findall
搜索字符串,以列表形式返回全部能匹配的子串
先简单介绍这么多
- 【Go 语言社区】epoll详解
- Oracle 12c数据库升级实战(r10笔记第70天)
- Oracle 12c升级检查问题分析(r10笔记第69天)
- 转--使用Revel(go)开发网站
- GoldenGate数据迁移的问题总结(二)(r10笔记第85天)
- Elasticsearch究竟要设置多少分片数?
- 设计模式(1)-使用简单工厂优化代码
- 简单易学的机器学习算法——因子分解机(Factorization Machine)
- Elasticsearch全文检索实战小结——复盘我带的第二个项目
- golang语言是如何处理栈的
- 【Go 语言社区】并发性
- GoldenGate数据迁移的问题总结(一)(r10笔记第84天)
- Elasticsearch大文件检索性能提升20倍实践(干货)
- Elasticsearch聚合优化 | 聚合速度提升5倍!
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Angular应用的依赖注入调试
- 给Angular应用增添搜索Search功能
- Angular应用一个创建场景的问题分析
- WPF 最简逻辑实现多指顺滑的笔迹书写
- WPF 如何确定应用程序开启了 Pointer 触摸消息的支持
- Hexo-Matery主题美化
- uniapp onPullDownRefresh 下拉刷新小坑
- Windows服务器常用配置
- SAP CRM订单数据库表CRMD_SHIPPING的填充原理
- 使用art-template模板引擎渲染数据
- SAP CRM索引数据库表CRMD_ORDER_INDEX的更新原理
- 将自己的nodeJS项目分享到npm上
- react中使用prop-types检测props数据类型
- git的常用命令及工作中冲突问题解决方法
- 关于react中的context