Python re模块学习

Posted hxf-zb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python re模块学习相关的知识,希望对你有一定的参考价值。

技术图片

这是re模块与正则的结合

技术图片

re模块提供的函数

1.match  尝试在字符串的开头应用该模式,返回匹配对象,如果没有找到匹配,则为None。

1 import re
2 
3 str1 = "Why are you keeping this curiosity door locked?"
4 res = re.match(\\w+y, str1)
5 print(res)

技术图片

如果要获取匹配的值则需要调用group()方法:

print(res.group())

技术图片

2. fullmatch  表示匹配全部字符串,返回匹配对象,如果没有找到匹配,则返回None。

 

import re

str1 = "Why are you keeping this curiosity door locked?"
res = re.fullmatch(\\w+y, str1)
print(res)

技术图片

import re

str1 = "Why"
res = re.fullmatch(\\w+y, str1)
print(res)

技术图片

3.search  匹配到第一个符合的字符串就会停止,返回匹配对象,如果没有找到匹配,则返回None。

 

import re

str1 = "Why are you keeping this curiosity door locked? looking foreword"
res = re.search(\\w+g, str1)
print(res)
print(res.group())

技术图片

match  就相当于 re.search(‘^RE‘, string) (从头开始去匹配)

4. findall 匹配字符串中所有符合的 ,返回匹配对象(列表),如果没有找到匹配,则返回None。

 

import re

str1 = "Why are you keeping this curiosity door locked? looking foreword"
res = re.findall(\\w+g, str1)
print(res)

技术图片

5. sub 把匹配到的字符串再用给的字符替换,然后返回新的字符串

sub(pattern, repl, string, count=0, flags=0)
import re

str1 = "Why are you keeping this curiosity door locked? looking foreword"
res = re.sub(ing, ed, str1)
print(res)

技术图片

import re

str1 = "Why are you keeping this curiosity door locked? looking foreword"
res = re.subn(ing, ed, str1)
print(res)

subn则会告诉你替换了多少处(返回的是一个元祖)

技术图片

6. split  相当于 字符串的split的用法, 返回切割后的列表

import re

str1 = "Why are you keeping this curiosity door locked? looking foreword"
res = re.split(e, str1)
print(res)

技术图片

可以把(RE)用括号括起来就可以把用来切割的 字符串也包含进列表中

import re

str1 = "Why are you keeping this curiosity door locked? looking foreword"
res = re.split((\\we), str1)
print(res)

技术图片

 

7. compile 先把正则编译,如果需要很多匹配的字符串都用到同一个正则表达式,则可以用compile先把正则编译好,可以节约时间

8.finditer  可以从匹配到的列表里一个一个的获取到数据,经常与compile连用处理比较多的数据

 

 

以上是关于Python re模块学习的主要内容,如果未能解决你的问题,请参考以下文章

python的re正则表达式模块学习

Python re模块学习

Python学习---重点模块之re

python学习24天----re模块py正则random模块

python3+ 模块学习 之 re

Python的学习之旅———re 模块正则表达式