正则表达式

本文详细介绍了Python中正则表达式的使用,包括模块`re`的基本操作,如全匹配、从头匹配和全匹配搜索,以及分隔、替换和模糊匹配规则。此外,还列举了常见的正则表达式语法,如d、D、s、S、w、W等,帮助读者全面掌握正则表达式在Python中的应用。
摘要由CSDN通过智能技术生成

目录

一:模块, re和regex

二:匹配规则

三:分隔规则

四:替换规则

五:模糊匹配规则


一:模块, re和regex

内置的re模块可以提供一些基础的匹配功能,并且具有更高的性能,如果只需要基础的可能是更好的选择。regex是第三方模块需要安装,如果需要更高级的功能,并且愿意使用第三方库,那么可以考虑使用regex库。

二:匹配规则

1:全匹配,返回所有匹配的列表

content = 're25656 6yu78jh'
pattern = re.compile("[a-zA-Z]+") #只匹配字母
all = pattern.findall(content) #匹配结果返回列表

print(all)

2:从头匹配,只匹配一个就返回

content = 're25656 6yu78jh'
pattern = re.compile("[a-zA-Z]+") #只匹配字母

match = pattern.match(content) #匹配对应内容

if match:

  print(match.group())

3:全匹配,只匹配一个就返回

content = '25656 6yu78jh'
pattern = re.compile("[a-zA-Z]+") #只匹配字母

search = pattern.search(content) #匹配对应内容

if search:

  print(search.group())

三:分隔规则

content : 原始字符串

str:分隔符号/表达式

1:按字符分隔

str = '你好'  #按照str分隔

content = 'a ty5tye 你好y1s2tyc'

result = re.split(str,content)
print(result) 

2:按数字分隔

content = 'a ty5tye 你好y1s2tyc'
str = '\d' #按照str分隔
result = re.split(str,content)
print(result) #i li你好ke mu你好s你好ic

四:替换规则

str:替换字符串

content:原始字符串

repl = 'a'  待替换字符串/表达式

1:按字符替换

repl = 'a'
result = re.sub(repl,'你好',content)
print(result)

2:按表达式替换

repl = '\d'
result = re.sub(repl,'你好',content)
print(result)

五:模糊匹配规则
content = 'a ty5tye 你好y1s2tyc56yec' #待匹配字符串
result = regex.findall('(?:tye){s<=1}', content) #匹配 tye最多有一个字符不一样
print(result)

附:REgex基础语法

语法    说明
\d    匹配一个数字字符
\D    匹配一个非数字字符
\s    匹配任何不可见字符(空格、制表符、换行符等)
\S    匹配任何可见字符
\w    匹配任何单词字符
\W    匹配任何非单词字符
.    匹配所有字符
^    从字符串开头开始匹配,比如^\d表示以一个数字字符开头
$    从字符串末尾开始匹配,比如\d$表示以一个数字字符结尾
*    匹配前一个字符任意次
+    匹配前一个字符一次或多次
?    匹配前一个字符零次或一次
{m}    匹配前一个字符m次
{m,n}    匹配前一个字符最少m次最多n次
\    转义字符
[]    比如[a-z]表示匹配从a到z之间的所有字符串
|    或,比如A|B表示匹配A或B
()    精确匹配括号中指定的模式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

攻城狮的梦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值