前言
正则表达式是对字符串的一种逻辑公式,用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则的字符串”,此字符串用来表示对字符串的一种“过滤”逻辑。正在在很多开发语言中都存在,而非python独有。对其知识点进行总结后,会写一个demo。
有需要Python学习资料的小伙伴吗?小编整理【一套Python资料、源码和PDF】,感兴趣者可以关注小编后私信学习资料(是关注后私信哦)反正闲着也是闲着呢,不如学点东西啦
1.正则表达式
python是自1.5开始引进re模块进行处理正则的。我先把正则的匹配规则总结一下,再总结re模块相应的方法。
1.1匹配规则
对于一个特殊字符在正则表达式中是不能正常识别的,如果接触过其他语言我们就这到有一个叫做转移字符的东西的存在,在特殊字符前加用反斜杠接口。比如\n换行\\为反斜杠,在这不再累述。下面来介绍一下re这个模块。
1.2.re模块
此模块主要方法如下
re.match()#尝试从字符串的起始位置匹配一个模式(pattern),如果不是起始位置匹配成功的话,match()就返回None re.search()#函数会在字符串内查找模式匹配,只要找到第一个匹配然后返回,如果字符串没有匹配,则返回None。 re.findall()#遍历匹配,可以获取字符串中所有匹配的字符串,返回一个列表。 re.compile()#编译正则表达式模式,返回一个对象的模式。(可以把那些常用的正则表达式编译成正则表达式对象,这样可以提高一点效率。) re.sub()#使用re替换string中每一个匹配的子串后返回替换后的字符串。 re.subn()#返回替换次数 re.split()#按照能够匹配的子串将string分割后返回列表。
1.2.1.re.match()
方法: re.match(pattern, string, flags=0) # pattern:正则表达式(或者正则表达式对象)string:要匹配的字符串flags:修饰符
先看一个最简单的用法
import re content ='Hello 123 4567 wangyanling REDome' print(len(content)) result = re.match('^Hello\s\d\d\d\s\d{4}\s\w{10}.*Dome