[关闭]
@2368860385 2021-11-01T08:26:41.000000Z 字数 721 阅读 181

python 正则表达式

面向大数据的python开发

正则表达式是一个特殊的字符序列,可以方便的价差一个字符串是否与某个模式串匹配。
pythonre包拥有全部的正则表达式功能。


1、正则表达式语法

语法 含义
[ABC] 匹配字符串中的所有ABC
[^ABC] 匹配字符串所有的非ABC
[A-Z] 匹配所有的A-Z大写字母
\s 空白字符,包括换行
\S 匹配非空白字符,不包括换行
\w 匹配字母,下划线,数字,\w等价于 A-Za-z0-9_
限定符 含义
* 表示前面的子表达式出现0次或者多次,abc*d可以匹配abd,abcd,abccd
+ 表示前面的子表达式出现1次或者多次
? 表示前面的子表达式出现1次或者0次
. 匹配除\n之外的任何字符
.* 贪婪模式,可以匹配最长的,比如a.*b会匹配aababazzzzzzbbbbbbb等,可以匹配以a开头,以b结尾的所有串
.*? 懒惰模式,非贪婪模式,a.*?会匹配aababacb,即以a开头,以b结尾最短的,中间可以没有。就是找到一个a,然后再找到第一个b就结束
.+? 懒惰模式,可以匹配以a开头,以b结尾,中间必须有的字符串,ab是不可以的
() 一个正则表达式开始结束的位置
{} 表示限定符的开始结束,比如o{2}可以匹配food中的ooo{2,5}表示o出现2次到5次,[1-9][0-9]{0,1}匹配0-99的两位数
| 两项之间做个选则
定位符 含义
^ 字符串开始的位置
$ 匹配字符串结尾的位置
\b 单词边界,字与空格间的位置

2、re.match函数

作用:从字符串的起始位置匹配模式串,

  1. re.match(pattern, string, flags = 0)

pattern:需要匹配的正则表达式
string:要匹配的字符串
flags:标志位。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注