Python正则表达式-常用函数的基本使用
常用函数有
re.match()、re.search() 、re.sub()、compile()、findall()、finditer()、split()
re.match() 匹配字符串开头,常用来判断数据是否满足我的正则要求。
成功返回一个match对象,不成功返回空。
>>> import re
>>> rc = re.compile(r"www.+")
>>> rc.match('www.com wxw.cn')
<re.Match object; span=(0, 14), match='www.com wxw.cn'>
>>> rc.match('wxw.cn www.com')
>>>
re.search() 匹配整个字符串,判断数据时候包含我的正则数据
'''
Python大型免费公开课,适合初学者入门
加QQ群:579817333 获取学习资料及必备软件。
'''
>>> rc.search('wxw.cn www.com')
<re.Match object; span=(7, 14), match='www.com'>
>>> rc.search('wxw.cn www.com wxw.org www.cn')
<re.Match object; span=(7, 29), match='www.com wxw.org www.cn'>
>>>
作比较
import rest = 'Monday Tuesday Wednesday Thursday Friday Saturday Sunday'
rc = r'sunday'#match 进行匹配
rcm = re.match(rc,st,re.I)
#re.I忽略大小写
if rcm:print(rcm.group())
else:print("match don't is Sunday")#search 进行匹配查找
rcs = re.search(r'sunday',st,re.I)
if rcs:print(rcs.group())
else:print("search don't is Sunday")
re.sub() 检索和替换
import re#re.sub(pattern, repl, string, count=0, flags=0)st = '这#是#一#个#很*寂*寞*的#天#,#下#着#有#些#伤@心@的@雨@'#将这个字符串里的特殊符号替换成空,也就是删掉的意思。
#定义正则
pat = r'[#\*@]'music = re.sub(pat,'',st)
print(music)
import re#re.sub(pattern, repl, string, count=0, flags=0)#repl 也可以是一个函数str ='主板 cpu computer 电池 mouse 键盘'
pat = r'[a-z]'
#将str中的小写英文字母全都转换为大写def chupper(matched):value = matched.group()return value.upper()res = re.sub(pat,chupper,str)
print(res)
compile 函数用于编译正则表达式,生成一个正则表达式( Pattern )对象,供 match() 和 search() 这两个函数使用。
'''
Python大型免费公开课,适合初学者入门
加QQ群:579817333 获取学习资料及必备软件。
'''
>>> import re
>>> pac = re.compile('[a-z]',re.I)
>>> st = 'A1b2c3d4e5f7g8h9i0g1k2l3m4n5'
>>> m = pac.match(st)
>>> m
<re.Match object; span=(0, 1), match='A'>
>>> m.group()
'A'
>>> m.start()
0
>>> m.end()
1
>>> m.span()
(0, 1)
>>>
findall
在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的,则返回空列表。
注意: match 和 search 是匹配一次 findall 匹配所有。
findall(string[, pos[, endpos]])
re.finditer
和 findall 类似,在字符串中找到正则表达式所匹配的所有子串,并把它们作为一个迭代器返回。
'''
Python大型免费公开课,适合初学者入门
加QQ群:579817333 获取学习资料及必备软件。
'''
>>> rec = re.compile(r'\D')
>>> iters = rec.finditer('abcd1234efg567hig')
>>> for value in iters:print(value.group(),end="")abcdefghig
>>>
split 方法按照能够匹配的子串将字符串分割后返回列表,它的使用形式如下:
re.split(pattern, string[, maxsplit=0, flags=0])
>>> rec = re.compile(r'[.]')
>>> st = '192.168.1.1'
>>> recs = rec.split(st)
>>>
>>> recs
['192', '168', '1', '1']
>>>
flags:
修饰符 | 描述 |
---|---|
re.I | 使匹配对大小写不敏感 |
re.L | 做本地化识别(locale-aware)匹配 |
re.M | 多行匹配,影响 ^ 和 $ |
re.S | 使 . 匹配包括换行在内的所有字符 |
re.U | 根据Unicode字符集解析字符。这个标志影响 \w, \W, \b, \B. |
re.X | 该标志通过给予你更灵活的格式以便你将正则表达式写得更易于理解。 |
Python正则表达式-常用函数的基本使用相关推荐
- python 正则替换_5分钟速览Python正则表达式常用函数!五分钟就掌握它!
导读:正则表达式是处理字符串类型的"核武器",不仅速度快,而且功能强大.本文不过多展开正则表达式相关语法,仅简要介绍python中正则表达式常用函数及其使用方法,以作快速查询浏览. ...
- python正则表达式常用函数和正则表达式符号查询
python正则表达式常用 >>> import re >>> re.__all__ ['match', 'fullmatch', 'search', 'sub', ...
- python常用字符串匹配_伸手党必备之Python正则表达式常用函数
今天介绍一下Python中常用的正则表达式处理函数.Python的正则表达式主要有两种方法完成模式匹配:『搜索』和『匹配』 re.match re.match 尝试从字符串的开始全部或者部分匹配某个模 ...
- 菜鸟教程python正则表达式_Python正则表达式常用函数菜鸟教程
这篇文章主要为大家详细介绍了Python正则表达式常用函数菜鸟教程,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! Py ...
- Python语言学习:Python语言学习之正则表达式常用函数之re.search方法【输出仅一个匹配结果(内容+位置)】、re.findall方法【输出所有匹配结果(内容)】案例集合之详细攻略
Python语言学习:Python语言学习之正则表达式常用函数之re.search方法[输出仅一个匹配结果(内容+位置)].re.findall方法[输出所有匹配结果(内容)]案例集合之详细攻略 导读 ...
- python Pool常用函数用法总结
在本篇内容里小编给大家整理的是一篇关于python Pool常用函数用法总结内容,有需要的朋友们可以学习下. 1.说明 apply_async(func[,args[,kwds]):使用非堵塞调用fu ...
- Python正则表达式常用的15个符号整理
http://blog.itpub.net/31403259/viewspace-2157778/ Python正则表达式常用的15个符号整理: 1. ? 匹配0次或一次前面的分组(问号在正则表达式中 ...
- Python中常用函数
Python中常用函数 1.range( )函数 函数定义: range(stop) range(start, stop[, step]) 返回值:返回一个递增或递减的数字列表,列表的元素值由三个参数 ...
- blankcount函数python,Python pandas常用函数详解
本文研究的主要是pandas常用函数,具体介绍如下. 1 import语句 2 文件读取 df = pd.read_csv(path='file.csv') 参数:header=None 用默认列名, ...
最新文章
- 多线程——生产者与消费者(多)1.5新锁,问题解决
- Spring(十二)之JDBC框架
- python读取excel,数字都是浮点型,日期格式是数字的解决办法
- 阿里京东滴滴等大厂面试题汇总
- python中与0xf2相等的是_python中__str__与__repr__
- loadrunner之socket协议脚本编写
- vue-cli目录结构解析
- 大屏震撼!三星Galaxy Note20+屏幕或突破7英寸
- 德勤发布2021中国成长型AI企业研究报告:迈向巅峰之路
- JSK-390 计负均正【入门】
- 关系数据库、NoSQL和NewSQL数据库产品分类
- 如何在EDUIS中导出ETL字幕模板_给视频加字幕?这8个工具助力你的短视频创作!...
- log4j日志系统的使用
- confirm 调用ajax,jQuery ajax中使用confirm,确认是否删除的简单实例
- FishC笔记—31 讲 永久存储:腌制一缸美味的泡菜
- 什么是摄像头自带wifi热点
- 投资理财启蒙之定投出一个千万富翁?
- 工作流-Activiti7-基础讲解
- 基于ssm企业后勤订餐管理系统的设计与实现-计算机毕业设计源码+LW文档
- 水果店从哪里进货便宜,水果店都有哪些进货渠道
热门文章
- Deploying Kubernetes with CoreDNS using kubeadm
- Python 爬虫 大量数据清洗 ---- sql语句优化
- 分享18个常用的网站性能测试工具
- 网站怎样留住浏览用户
- 彻底明白Java语言中的IO系统
- 卸载受密码保护SEP Norton 11
- “影响100活动”答记者问(二)
- erwin模型怎么保存_一行命令启动,十分钟内完成部署,Paddle Serving开放模型即服务功能...
- 三、【SAP-PM模块】PM模块主数据
- 强制结束后台作业(SAP SM37 SM35 SM50)