正则表达式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

# pattern:正则表达式的字符串或原生字符串表示
# string:待匹配字符串
# flags;正则表达式使用时的控制标记

# search 在一个字符串中搜索匹配正则表达式的第一个位置 返回match对象
import re
match1=re.search(r'[1-9]\d{5}','BIT 100081')
if match1:
    print("match1:"+match1.group(0))
print("match1待匹配的文本:"+match1.string) # 待匹配的文本
print("match1匹配使用的pattern对象:"+str(match1.re)) # 匹配使用的pattern对象
print("match1搜索文本的开始位置:"+str(match1.pos)) # 正则表达式搜索文本的开始位置
print("match1搜索文本的结束位置:"+str(match1.endpos)) # 正则表达式搜索文本的结束位置
print("match1匹配字符串在原始字符串的开始位置:"+str(match1.start())) # 匹配字符串在原始字符串的开始位置
print("match1匹配字符串在原始字符串的结束位置:"+str(match1.end())) # 匹配字符串在原始字符串的结束位置
print("match1获得匹配后的字符串:"+match1.group(0)) # 获得匹配后的字符串

# match 从头开始匹配
match2=re.match(r'[1-9]\d{5}','BIT 100081')
if match2:
    print("match2:"+match2.group(0))

# 匹配上了
match3=re.match(r'[1-9]\d{5}','100081 BIT')
if match3:
    print("match3:"+match3.group(0))

# findall 找到所有的 返回列表
match4=re.findall(r'[1-9]\d{5}','BIT100081 TSU100084')
if match4:
    print("match4:"+str(match4))

# split 按匹配符分割 匹配的部分去掉 留下的返回列表
match5=re.split(r'[1-9]\d{5}','BIT100081 TSU100084')
if match4:
    print("match5:"+str(match5))

# maxsplit 最大分割数 剩下的可以分割的部分全留下 不做分割
match6=re.split(r'[1-9]\d{5}','BIT100081 TSU100084',maxsplit=1)
if match6:
    print("match6:"+str(match6))

# finditer 搜索字符串 返回一个匹配结果的迭代类型 每个迭代元素是match对象
for m in re.finditer(r'[1-9]\d{5}','BIT100081 TSU100084'):
    if m :
        print("finditer:"+m.group(0))

# sub 在一个字符串中替换所有匹配正则表达式的子串,返回替换后的字符串
sub1=re.sub(r'[1-9]\d{5}','zipcode','BIT100081 TSU100084')
print(sub1)

# regex 将正则表达式的字符串形式编译成正则表达式对象

结果:
match1:100081
match1待匹配的文本:BIT 100081
match1匹配使用的pattern对象:re.compile(’[1-9]\d{5}’)
match1搜索文本的开始位置:0
match1搜索文本的结束位置:10
match1匹配字符串在原始字符串的开始位置:4
match1匹配字符串在原始字符串的结束位置:10
match1获得匹配后的字符串:100081
match3:100081
match4:[‘100081’, ‘100084’]
match5:[‘BIT’, ’ TSU’, ‘’]
match6:[‘BIT’, ’ TSU100084’]
finditer:100081
finditer:100084
BITzipcode TSUzipcode

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值