正则表达式

一、元字符:

. ^ $ * + ? {} [] | () \

 . 代表任意的1个字符,除了\n  (换行符)以外,如果要匹配换行符需要用模式修正符。

 ^ 代表从字符串的开头进行匹配,在[]里边的时候则表示非的意思。

 $ 代表从字符串的结尾进行匹配

 * 代表按*左边的字符进行匹配,包含0-无穷次 默认贪婪匹配,按最多的进行匹配

 + 代表按+左边的字符进行匹配,包含1-无穷次 默认贪婪匹配,按最多的进行匹配

 ? 代表按?左边的字符进行匹配,包含0-1次 默认贪婪匹配,按最多的进行匹配

{} 定义匹配的范围, 默认贪婪匹配,按最多的进行匹配
{0, }  表示0到穷次 相当于*
{1, }  表示1到无穷次,相当于+
{0,1}  表示0到1次,相当于?
{n}恰好n次
{n,}至少n次
{n,m}至少n次,至多m次
[] 字符集 字符集中的字符都是或的作用,在字符集有功能的符号是 - ^ \
 - 代表左边的字符到右边的字符
   [a-z] 代表a到z
   [A-Z] 代表A到Z
   [0-9] 代表0到9
 ^ 代表非
   [^a-z] 代表非a-z的所有字符
 \ 代表转义符,后面跟元字符则去除元字符的特殊功能,后面跟某些字符实现特殊功能,见下边:
   \d 匹配任何十进制数;相当于[0-9]
   \D 匹配任何非数字字符;相当于[^0-9]
   \s 匹配任何空白字符; 相当于[\t\n\r\f\v]
   \S 匹配任何非空白字符; 相当于[^\t\n\r\f\v]
   \w 匹配任何字母数字字符与下划线;相当于[a-zA-Z0-9_]
   \W 匹配任何非字母数字字符与下划线;相当于[^a-zA-Z0-9_]
   \b 匹配任何一个特殊字符边界;如空格 & # 等
 因为的python中,\b代表转义字符退格,当引入re模块想使用\b来匹配任何一个特殊字符边界时,应当使用\\b

模式修正符:
I (大写的i)匹配时候忽略大小写(重点)
M 多行匹配(重点)
L  本地化识别匹配
U 根据unicode编码进行解析
S 让 . 匹配包括换行符(重点)


贪婪模式和懒惰模式:

正则表达式函数:

1、re.match

 从头开始匹配

2、re.search

 从指定的任意位置开始匹配

3、全局匹配函数:re.compile(正则表达式).findall(待匹配数据)

4、re.sub()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值