Python的正则表达式练习之路(one\d*)

进一步理解正则表达式。熟悉了两个概念:元字符和预定义字符集。理解这个表达式:one\d*。就是one字符串后有一个或多个数字。

#对应的位置可以是字符集中任意字符。
#字符集中的字符可以逐个列出,也可以给出范围,如[abc]或[a-c]。
#[^abc]表示取反,即非abc。
#所有特殊字符在字符集中都失去其原有的特殊含义。用\反斜杠转义恢复特殊字符的特殊含义。

import re
str='one0bone1cone2done3gone4hone5lone6mone7none8pone9rone10sone11tone12zone13'

#元字符’*‘匹配前一个字符0或多次。
#'\d'为预定义字符集数字[0-9]。r'one\d*'也可以表示为r'one[0-9]*'
p=re.compile(r'one[0-9]*')

resultlist=p.findall(str)
print(" ".join(resultlist))

#返回的是b c d g h l...,去除掉匹配模式后的部分
#print中的"end"默认是换行,但可以是" ","*"之类的。
subs=re.split(p,str)
for sub in subs:
    print(sub,end="*")

iter=re.finditer(p,str)

#结果是这样子:one1:(5, 9)...
for i in iter:
    print(i.group(),end=':')
    print(i.span())

#统一替换。‘owe空格'。
print(re.sub(p,'owe ',str))

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值