python中正则表达式的用法

正则表达式匹配单个字符

. 匹配任意一个字符(除了\n回车)
[ ] 匹配[]中列举的字符
\d 匹配数字,0-9
\D 匹配非数字,即不是数字
\s匹配空白,即空格 tab键
\S匹配非空白
\w 匹配单词字符,a-z,A-Z,0-9,_
\W 匹配非单词字符

re模块的使用过程

# 导入re模块
import re

# 使用match方法进行匹配操作
result = re.match(正则表达式,要匹配的字符串)

# 如果上一步匹配到数据的话,可以使用group方法来提取数据
result.group()

正则表达式匹配多个字符

{m}匹配前一个字符出现m次
{m,n}匹配前一个字符出现m-n次
?匹配前一个字符出现0次或1次,即要么有1次,要么没有
*匹配前一个字符出现0次或者无限次,即可有可无
+匹配前一个字符出现1次或者无限次,即至少有1次

^以xxx开头
$以xxx结尾
\转义 \n换行 \t制表符 ?出现0次或1次

匹配分组

|匹配任意一个左右的表达式
(a|b )匹配任意一个组,将括号中的字符内容作为一个分组
\num 可以匹配到分组对应的字符串

Re模块的高级用法

match从头开始匹配;
search不是从头开始匹配 re.search(r”\d+”,”html_str”)
findall 统计全部,返回值就是列表 re.findall(r”\d+”,”python=999,java=888,c++=123456”)
sub 将匹配到的数据进行替换 re.sub(r”\d+”,”1111”,”html_str”)
应用于爬虫爬下来的网页,清洗标签,空白符等一些东西,只剩纯净的数据做展示用

r的作用:表示原生的字符串

eg:获取目录的时候C:\a\b\c \要转义,1个变2个,2个变4个,C:a\b\c匹配要转义的内容

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Python,可以使用正则表达式模块re来进行正则表达式的操作。首先需要导入re模块,使用import re。然后可以使用re模块提供的各种函数进行正则表达式的匹配、查找、提取和替换等操作。其,常用的函数包括findall、search、match和sub等。 - findall函数可以用于查找字符串所有匹配正则表达式的子串,并以列表的形式返回所有匹配的结果。 - search函数可以在整个字符串搜索匹配正则表达式的第一个子串,并返回一个匹配对象。如果找到匹配的子串,则可以通过匹配对象的group方法得到匹配的结果。 - match函数可以在字符串的开头匹配正则表达式,并返回一个匹配对象。如果在开头找到匹配的子串,则可以通过匹配对象的group方法得到匹配的结果。 - sub函数可以用于替换字符串匹配正则表达式的子串。 使用正则表达式时,还可以使用一些基础的符号来表示规则,比如“.*”表示匹配任意字符任意次数,“.*?”表示非贪婪匹配。这些符号可以用于更灵活地匹配和提取字符串的信息。 总结起来,Python正则表达式用法包括导入re模块、使用findall、search、match和sub等函数来进行匹配、查找、提取和替换等操作,并可以使用一些基础的符号来表示匹配规则。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [【Python正则表达式的使用](https://blog.csdn.net/heiren_a/article/details/123174223)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值