1、字符串匹配
- 字符串匹配指验证一个字符串是否符合指定的“字符串模板”,常用于用户输入验证。例如,用户在注册时要输入邮箱,所以需要验证邮箱是否有效,这就要用到字符串匹配验证。我们使用match(p,text)函数进行字符串匹配,其中的参数p是正则表达式,即字符串模板,text是要验证的字符串。如果匹配成功,则返回一个Match对象(匹配对象),否则返回None。示例如下:
import re p = r"w+@abcd.com" email = "aaaaaa@abcd.com" m = re.match(p, email) print(m)
2、字符串查找
- 字符串查找指从一个字符串中查找匹配正则表达式的子字符串,常用于数据分析、网络爬虫等数据处理中。
- 常用的字符串查找函数如下。search(p,text):在text字符串中查找匹配的内容,如果找到,则返回第1个匹配的Match对象,否则返回None。p是正则表达式。findall(p,text):在text字符串中查找所有匹配的内容,如果找到,则返回所有匹配的字符串列表;如果一个都没有匹配,则返回None。p是正则表达式。
import re p = r"w+@abcd.com" p1 = r"Py|py|PY" text1 = "ghghghgh jj kk ll bbbbb@abcd.com" text2 = "PY FFFFF GGGgggg gggdd py kjflkdsjlkf Py sjdlfjdsjlk" m2 = re.search(p, text1) m3 = re.findall(p1, text2) print(m2) print(m3)
3、字符串替换
- 正则表达式的字符串替换函数是sub( ),该函数替换匹配的子字符串,返回值是替换之后的字符串,其语法格式如下:
- 其中,参数pattern是正则表达式;参数repl是用于替换的新字符串;参数string是即将被替换的旧字符串;参数count是要替换的最大数量,默认值为零,表示不限制替换数量。我们在Python Shell中运行代码,看看运行结果怎样。
4 、字符串分割
在Python中使用re模块中的split( )函数进行字符串分割,该函数按照匹配的子字符串进行字符串分割,返回字符串列表对象,其语法格式如下:
其中,参数pattern是正则表达式;参数string是要分割的字符串;参数maxsplit是最大分割次数;maxsplit的默认值为零,表示分割次数没有限制。