Python 正则表达式(二)
正则表达式替换字符串
语法为:re.sub(pattern, repl, string, count, flags),其中pattern 表示模式字符串,repl表示用来替换的字符串,string表示要替换的原始字符串,count表示替换次数,flags用来控制匹配方式,例如区分大小写等
import re
pattern = r'1[34578]\d{9}' #定义模式字符串,\d表示匹配数字
s1 = "中奖号码:45678901 联系电话:18001234567" #匹配字符串
result = re.sub(pattern,"1XXXXXXXXXX",s1) #替换结果,注意引号
print(result)
中奖号码:45678901 联系电话:1XXXXXXXXXX
#例:替换颜色字符,将颜色字符替换成@__@
import re
pattern1 = r'(黄色)|(绿色)|(红色)|(紫色)' #定义模式
a1 = "今天我穿了一件套头卫衣,黄色的!我很喜欢这件衣服。" #原始字符串
result1 = re.sub(pattern1,"@__@",a1) #替换字符串中的颜色字符
print(result1) #输出
今天我穿了一件套头卫衣,@__@的!我很喜欢这件衣服。
正则表达式分割字符串
语法为:re.split(pattern, string, [maxsplit], [flags]),其中pattern 表示模式字符串,string表示要分割的原始字符串,maxsplit可选参数表示最大分割次数,flags可选参数表示标志位,用来控制匹配方式,例如区分大小写等
import re
pattern2 = r'[?|&]' #分割模式
url = "http://www.baidu.com?usename='halun2020'&psd='12345678'"#原始字符串
result2 = re.split(pattern2,url) #分割
print(result2)
['http://www.baidu.com', "usename='halun2020'", "psd='12345678'"]
#例 输出@好友的名单列表
import re
namelist = "@张三 @李四 @王五 @赵六 @钱七" #原始字符串,空格不一样
pattern3 = r'\s*@' #模式,使用空格或单独的@分割字符串 \s表示匹配任意空白符,*表示匹配前面字符0次或多次
result3 = re.split(pattern3,namelist) #分割
print("@的好友名单为:",result3)
@的好友名单为: ['', '张三', '李四', '王五', '赵六', '钱七']
#输出结果第一个为空,为了解决该问题,可以写一个for循环
import re
namelist = "@张三 @李四 @王五 @赵六 @钱七" #原始字符串,空格不一样
pattern3 = r'\s*@' #模式,使用空格或单独的@分割字符串 \s表示匹配任意空白符,*表示匹配前面字符0次或多次
result3 = re.split(pattern3,namelist) #分割
print("@的好友名单为:") #注意print for的搭配使用
for item in result3:if item != "": #如果好友名不为空print("好友的名字:",item)
@的好友名单为:
好友的名字: 张三
好友的名字: 李四
好友的名字: 王五
好友的名字: 赵六
好友的名字: 钱七
Python 正则表达式(二)相关推荐
- Python正则表达式初识(二)
前几天给大家分享了[Python正则表达式初识(一)],介绍了正则表达式中的三个特殊字符"^"."."和"*",感兴趣的伙伴可以戳进去看看, ...
- python正则表达式初识(七)_Python正则表达式初识(二)
前几天给大家分享了Python正则表达式初识(一),介绍了正则表达式中的三个特殊字符"^"."."和"*",感兴趣的伙伴可以戳进去看看,今天 ...
- Python正则表达式初识(十)附正则表达式总结
今天分享正则表达式最后一个特殊字符"\d",具体的教程如下. 1.特殊字符"\d"十分常用,其代表的意思是数字.代码演示如下图所示. 其中"+&quo ...
- python 正则表达式re 模块的使用
python 正则表达式re 模块的使用 文章目录: 一.re模块介绍 1.re模块说明 2.官方文档给出的文档 3.别人总结的成表格中的内容 二.re模块使用介绍 1.常用函数源码 1.常用的函数介 ...
- 菜鸟教程python正则表达式_python 正则表达式详解
python 正则表达式详解 1. 正则表达式模式 模式描述 ^ 匹配字符串的开头 $ 匹配字符串的末尾. . 匹配任意字符,除了换行符,当re.DOTALL标记被指定时,则可以匹配包括换行符的任意字 ...
- python 结尾回车_理解不了Python正则表达式?我帮你搞定
点击蓝字"python教程"关注我们哟! 在学习Python的过程中,我们难免会遇到比较晦涩.难以理解的内容,比如Python中的正则表达式.面向对象等内容,为了更好地帮助大家理解 ...
- 匹配正则_程序员入门基础:python正则表达式贪婪匹配和非贪婪匹配
此文为python正则表达式的高阶入门,正则基础入门请参考程序员入门基础:python的正则表达式. 一.贪婪匹配和非贪婪匹配 举例说明概念: print('非贪婪匹配',re.search('el+ ...
- 阅读后这篇文章后,python正则表达式完全弄懂了
大多数编程语言的正则表达式设计都师从Perl,所以语法基本相似,不同的是每种语言都有自己的函数去支持正则,今天我们就来学习 Python中关于 正则表达式的函数. re模块主要定义了9个常量.12个函 ...
- Python 正则表达式re模块的使用
Python 正则表达式re模块的使用 基本上所有的编程语言都会有正则表达式,正则表达式是用来匹配一段字符串的表达式. 在Python中需要通过正则表达式对字符串进行匹配的时候,可以使用内置模块re. ...
- Python正则表达式常用flag含义与用法详解
封面图片:<Python程序设计实验指导书>(ISBN:9787302525790),董付国,清华大学出版社 图书详情(京东): ================== Python正则表达 ...
最新文章
- 电脑文件加密_电脑文件加密软件哪个好?企业加密软件排行榜
- Centos6.9以下查看端口占用情况和开启端口命令
- java mongodb drivers 2升级到3_JAVA从头开始一基础梳理(3-2)
- ASP.NET MVC升级到ASP.NET Core MVC踩坑小结
- 李宏毅Reinforcement Learning强化学习入门笔记
- Linux下,C++编程论坛题目抽取
- java关闭一个窗口打开另一个_推开中式门窗,就像打开了另一个写意的世界…...
- 李迟2021年4月知识总结
- java玻璃效果_swing透明效果(没aero毛玻璃那么好看)
- html弹窗乱码,javascript弹窗是乱码怎么办?
- Uber数据泄露事件本可以使用区块链…
- Evaluate之迷思
- 小旋风蜘蛛池采集工具教程分享
- 百度地图(二) - 模仿百度地图搜索框
- 年薪30万、50万、100万的管理者,有啥分别?
- windows10神州网信政府版“麦克风”权限如何打开?
- linux下 eps怎么打开方式,eps文件怎么用ps打开
- 如何计算站点停留时间和页面停留时间
- 微型计算机的问世是由什么的出现,高中信息技术奥林匹克竞赛知识题库
- Java编写简易控制台计算器
热门文章
- Docker学习总结(19)——Google开源的容器集群管理系统Kubernetes介绍
- Mysql学习总结(34)——Mysql 彻底解决中文乱码的问题
- linux文本模式无法打字,文本终端模式下中文输入法(Fcitx)配置(openSUSE Leap 42.1)...
- 填坑-十万个为什么?(18)
- eclipse中配置server
- 《Oracle从入门到精通》读书笔记第四章 SQL语言基础之二
- HRESULT是什么类型
- 关于vue的语法规则检测报错问题
- selenium IDE的基本命令
- Blend_技巧篇_淡入淡出