• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Dragon水魅
博客园    首页    新随笔    联系   管理    订阅  订阅

基于MOOC嵩天《Python网络爬虫与信息提取》视频学习记录——第三周:正则表达式

文章目录

  • 1.正则表达式的语法
    • 正则表达式的常用操作符
    • 正则表达式语法实例
    • 经典正则表达式实例
      • 匹配ip地址的正则表达式
  • 2.re库的基本使用
    • 正则表达式的表示类型
    • re库主要功能函数
      • 1)re.search( )
      • 2)re.match( )
      • 3)re.findall( )
      • 4)re.split( )
      • 5)re.finditer( )
      • 6)re.sub( )
    • re.compile( )
    • re库的另一种等价用法
  • 3.re库的match对象
    • match对象的属性
    • match对象的常用方法
  • 4.re库的贪婪匹配和最小匹配
    • 最小匹配操作符

1.正则表达式的语法

正则表达式的常用操作符

在这里插入图片描述
在这里插入图片描述

正则表达式语法实例

在这里插入图片描述

经典正则表达式实例

在这里插入图片描述

匹配ip地址的正则表达式

在这里插入图片描述

2.re库的基本使用

正则表达式的表示类型

在这里插入图片描述

re库主要功能函数

在这里插入图片描述

1)re.search( )

在这里插入图片描述
在这里插入图片描述

import re
match = re.search(r'[1-9]\d{5}','BIT 100081')
if match:
    print(match.group(0))

在这里插入图片描述

2)re.match( )

在这里插入图片描述

3)re.findall( )

在这里插入图片描述

import re
ls = re.findall(r'[1-9]\d{5}','BIT100081 TSU100084')
print(ls)

在这里插入图片描述

4)re.split( )

在这里插入图片描述

import re
ls1 = re.split(r'[1-9]\d{5}','BIT100081 TSU100084')
print(ls1)
ls2 = re.split(r'[1-9]\d{5}','BIT100081 TSU100084',maxsplit = 1)
print(ls2)

在这里插入图片描述

5)re.finditer( )

在这里插入图片描述

import re
for i in re.finditer(r'[1-9]\d{5}','BIT100081 TSU100084'):
	if i:
		print(i.group(0))

在这里插入图片描述

6)re.sub( )

在这里插入图片描述

import re
print(re.sub(r'[1-9]\d{5}','zipcode','BIT100081 TSU100084'))

在这里插入图片描述
注:在使用sub的替换时,无法替换掉“\n”换行符,需先将“\n”替换为空或者空格,再进行替换

re.compile( )

在这里插入图片描述

re库的另一种等价用法

在这里插入图片描述

3.re库的match对象

match对象的属性

在这里插入图片描述

match对象的常用方法

在这里插入图片描述

import re
m = re.search(r'[1-9]\d{5}','BIT100081 TSU100084')
print(m.string)
print(m.re)
print(m.pos)
print(m.endpos)
print(m.group(0))
print(m.start())
print(m.end())
print(m.span())

在这里插入图片描述

4.re库的贪婪匹配和最小匹配

Re库默认采用贪婪匹配,即输出匹配最长的子串。

import re
match = re. search(r'PY.*N','PYANBNCNDN')
print(match.group(0))

在这里插入图片描述
当我们需要re库的最小匹配时,只需进行如下修改:

import re
match = re. search(r'PY.*?N','PYANBNCNDN')
print(match.group(0))

在这里插入图片描述

最小匹配操作符

在这里插入图片描述

posted @ 2019-10-11 20:53  Dragon水魅  阅读(153)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3