python re模块

摘要:
re模块主要用于查找、替换和拆分打印的特殊字符(元字符)(re.__doc__):=1个字符,无返回Nonesearch(模式:字符串),在整个字符串范围内匹配:无返回None(2)匹配条件编译(模式)(3)拆分(模式):返回列表(4)查找所有findall(模式,返回列表查找器(模式)。

re模块主要用于查找、替换、分割

print(re.__doc__)

特殊字符(元字符):

"."           任意一个字符,除换行符( )

"^"          字符串开头

"$"          字符串结尾

"*"          >=0个字符,贪婪匹配

"+"          >=1个字符,贪婪匹配

"?"          0或1个字符,贪婪匹配

{m, n}        重复m至n次个字符,贪婪匹配

*?, +?, ??, {m, n}?  非贪婪,尽量少

[]           一个字符

"|"           或

()           group使用,分割使用时,全部作为列表元素

(?P<name>)      字符匹配别名

特殊序列:

A   字符串开始

   字符串结尾

   开始或结尾位置的空字符串

B   非

d   [0-9]

D   [^0-9]

s   空白字符 [ fv]

S   非s [^s]

w   [a-zA-Z0-9_] 数字、字母

W   非数字、字母

\   

可选函数参数:

re.I  忽略大小写 

  注:分割不忽略大小写

re.M  多行匹配

  注:改变^$方式为:每行都判定

函数:

(1)查找(找到一个就完成)

match(patttern, string)

  从字符串开始位置匹配,无返回None

search(pattern, string)

  整个字符串范围内匹配,无返回None

(2)匹配条件

compile(pattern)

(3)分割

split(pattern, string)

  匹配分割,返回列表

(4)全部查找

findall(pattern, string) 

  查找所有匹配子串,返回列表

finditer(pattern, string)

  查找所有匹配子串,组成一个迭代器

(5)替换

sub(pattern, repl,  string)

  在字符串string中,查找匹配正则表达式pattern的所有子串,用另一个字符串repl进行替换

subn(pattern, repl, string)

  同sub,返回二维元组

运用方式:

r1 = re.compile("[.*]")

re.findall(r1, "abc")
r1 = re.compile(r"world")
if r1.match("helloworld"): print("Ok")
re.split("(w+)", "192.168.1.1")

免责声明:文章转载自《python re模块》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇selenium WebDriver 获取disabled文本框内容(转)c# List深度复制下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

CSS中背景图片定位方法

CSS中背景图片的定位,困扰我很久了。今天总算搞懂了,一定要记下来。 在CSS中,背景图片的定位方法有3种:   1)关键字:background-position: top left;   2)像素:background-position: 0px 0px;   3)百分比:background-position: 0% 0%; 上面这三句语句,都将...

sqlserver 查询当天/本周/本月/本季度/本年的数据

当天数据:select * from tableName where datediff(day, 字段名,getdate())=0 本周数据:select * from tableName where datediff(week, 字段名,getdate())=0 本月:select * from tableName where datediff(mont...

AirtestIDE高级功能

本篇文章基于AirtestIDE1.2.9 前期回顾: AirtestIDE基本功能(一) AirtestIDE基本功能(二) 一、图片编辑器 双击代码编辑区里的图片,就可以打开该图片的编辑界面 Snapshot+Recognition 点击左上按钮,对当前手机屏幕截图,并识别图片是否在截图中,识别到后会红圈标出,并在左下显示识别方法和可信度 filen...

redis 的操作

redis Redis(Remote Dictionary Server)是一个开源使用的非关系型数据库 通常被称为数据结构服务器,因为值可以是字符串,哈希,列表,集合,有序集合 优势 ​ 性能极高,读取速度110000次每秒,写的速度81000次每秒 ​ 数据类型丰富,低延时、高吞吐、纯内存 ​ 数据备份,恢复 ​ 丰富的特性:可用于缓存,消息,按key...

pycharm 模板添加作者时间信息

 在pycharm使用过程中,对于每次新建文件的shebang行和关于代码编写者的一些个人信息快捷填写,使用模板的方式比较方便。   方法如下:   1.打开pycharm,选择File-Settings     2.选择Editor--Color&Style--File and Templates--Python-Script 3.编辑内容...

QQ 5.0的一些特效学习 一

虽然QQ5.0已经过去很久了,但是有些特效还是值得学习的  效果:  源码点我 导入的jar包, 一个是高版本的support.v4包,需要这个v4包中有ViewDragHelper. 我这里使用的是support-v4:24.1.1 还要添加一个nineoldandroids的jar包,这是一个开源的动画库,使用方便。 GitHub地址:https:/...