正则表达式和re库的知识-python爬虫和信息提取1-北京理工大学-嵩天老师
一、正则表达式
1、基本概念
两个字说,正则表达式的特点就是【简洁】。
2、正则表达式常用操作符
3、语法实例
在此解释最后一个:{}的意思是Y重复的次数,加上:3后表示P和N之间有0~3个Y
二、Re库
1、基本概念:
(1)Re库主要用于字符串匹配
(2)其采用raw string类型(原生字符串类型)
(3)采用raw string类型表示正则表达式,格式为 r'text'
eg:r'[1-9]\d{5}':由一个1~9的数和5个0~9的数组成的正则表达式
注:raw string是不包含对转义字符再次转义的字符串(如\d,在用string表示的情况下要写成\\d,但raw string没这种情况)
2、Re库主要功能函数
(1)search():
-
import re
-
match = re.search(r'[1-9]\d{5}','BIT 100081')
-
if match:
-
print(match.group[0])
-
#输出 100081
(2)match():
-
import re
-
match = re.match(r'[1-9]\d{5}','BIT 100081')
-
if match:
-
match.group(0)
-
-
-
match.group(0)
-
'''因为是从头匹配,由于开头不符合匹配条件,因此匹配失败;下半部分的代码就可以匹配成功
-
Traceback (most recent call last):
-
File "<pyshell#5>", line 1, in <module>
-
match.group(0)
-
AttributeError: 'NoneType' object has no attribute 'group'
-
'''
-
match = re.match(r'[1-9]\d{5}','100081 BIT')
-
if match:
-
match.group(0)
-
-
-
'100081'
(3)findall():
-
import re
-
ls = re.findall(r'[1-9]\d{5}','BIT100081 TSU100084')
-
ls
-
['100081', '100084']
-
#原理是将可以匹配的字符串存储在一个列表中
(4)split()
-
import re
-
re.split(r'[1-9]\d{5}','BIT100081 TSU100084')#作用是去掉匹配的字符串,将剩下部分存储在列表中
-
['BIT', ' TSU', '']
-
re.split(r'[1-9]\d{5}','BIT100081 TSU100084',maxsplit=1)#最后maxsplit=1作用是只去掉前面一个匹#配的字符串
-
['BIT', ' TSU100084']
(5)finditer()
-
import re
-
for m in re.finditer(r'[1-9]\d{5}','BIT100081 TSU100084'):
-
if m:
-
print(m.group(0))
-
-
# 匹配到一次返回一次
-
100081
-
100084
(6)sub()
-
import re
-
re.sub(r'[1-9]\d{5}',':zipcode','BIT100081 TSU100084')
-
'BIT:zipcode TSU:zipcode'
-
#将所有的匹配部分换成zipcode
3、Re库另一种等价用法
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgfekgg
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01