正则模块

前端之家收集整理的这篇文章主要介绍了正则模块前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

正则模块findall用法

分享图片

import re  #正则模块
ret = re.findall(\d+,"alex3714pwd123")  #将匹配结果以列表形式返回
print(ret)  #[‘3714‘,‘123‘]
View Code

正则search方法

如果没有匹配到 那么返回值位none,而none没有group方法,会报错

分享图片

import re  #正则模块
ret = re.search(\d+,"alex3714pwd123")   # 将匹配结果以对象形式返回,只匹配第一个
print(ret) #<re.Match object; span=(4,8),match=‘3714‘>
print(ret.group()) #匹配结果用group方法查看 3714
View Code

正则 search的分组

分享图片

import re
tag = <span>search<\span>
ret = re.search(r>(\w+)<,tag)
print(ret.group()) #>search<
print(ret.group(1))
print(ret.groups()) #(‘search‘,) 保存分组
View Code

正则split方法

分享图片

import re  #正则模块
new_str = re.split(\d+,alex123egon12tonny1)  #把目标字符串按照一定的正则表达式进行拆分
print(new_str) #[‘alex‘,‘egon‘,‘tonny‘,‘‘]
View Code

正则sub方法

分享图片

import re
str1 = alex3714egon110eva666
str2 = re.sub(r\D,M,str1) #用新的字符去替换原有匹配到的字符
print(str2)  # MMMM3714MMMM110MMM666
View Code

正则subn方法

分享图片

import re
str1 = alex3714egon110eva666
str2 = re.subn(r\D,str1) #用新的字符去替换原有匹配到的字符
print(str2)  # (‘MMMM3714MMMM110MMM666‘,11)元组形式展示替换后的字符串和替换次数
View Code

正则compile:

分享图片

@H_63_301@

import re
str1 = alex3714egon110eva666
regx = re.compile(\d+)   # 将正则表达式多次使用,可以减少每次匹配的编译次数
ret = regx.findall(str1)
print(ret) #[‘3714‘,‘110‘,‘666‘]
View Code

正则finditer方法

分享图片

import re
str1 = alex3714egon110eva666
Iter = re.finditer(r\d+,str1)   #将匹配结果作为一个迭代器返回
for item in Iter:
    print(item)   #每一个item类是一个search结果
    print(item.group()) # search结果掉用group方法
# <re.Match object; span=(4,match=‘3714‘>
# 3714
# <re.Match object; span=(12,15),match=‘110‘>
# 110
# <re.Match object; span=(18,21),match=‘666‘>
# 666
View Code

猜你在找的正则表达式相关文章