python判断句子是否匹配某种模式

本文介绍了Python中正则表达式的几种使用方法,包括re.search、re.match和re.findall等函数的区别及应用场景,并通过实例展示了如何进行字符串的查找、替换与拆分。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

re.search是字符串里面存在某种正则

if  re.search(r"^\s{0,}\(([a-zA-Z]|\d+)\)", en):    
    lines.append(ch + '|||' + en +'\n')

  

re.match是整个字符串匹配

if re.match(r".*\|\|\|.*", line):

 

re.findall可能得到的是数组,len(re.findall)判断数组是否为空 即能判断字符串中是否匹配某种模式

 while len(re.findall( r'[a-z]+[A-Z]',  line)) > 0:

 

如何拆分TomJackSun为Tom Jack Sun:

 while len(re.findall( r'[a-z]+[A-Z]',  line)) > 0: #TomJack->Tom Jack
        line = re.sub( r'([a-z]+)([A-Z])', r'\1 \2', line )

 

替换操作re.sub和re.subn有什么区别呢:

把?换为!  nu代表替换了几个

line,nu = re.subn(r'!','!',line)   

 

把空格替换掉

ch = re.sub('\s+','',ch)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值