Python提供了re模块,用于实现正则表达式的操作,在现实试,可以使用re模块提供的方(search()、match()、findall())进行字符串的处理,也可以使用re模块的compile()方法将模式字符串转换我正则表达式对象,然后再使用正则表达式对象的相关方法来操作字符串。
二、字符串替换
sub()方法用于实现字符串替换,其语法格式为:
re.sub(pattern,repl,string,count,flags) #pattern表示模式字符串
#repl表示替换的字符串
#string:表示要被查找替换的原始字符串
#count:可选参数,表示模式匹配后替换的最大次数,默认值为0,表示替换所有的值
#flags:可选参数,表示标志位,用于控制匹配模式
import re #导入re模块包
pattern= r'(黑客)(抓包)(监听)(Trojan)' #模式字符串
about ='我是一名程序员,我想研究下黑客方面的书,想研究Trojan。'
sub=re.sub(pattern,'xxx',about) #进行模式替换
print(sub) #打印输出替换后的字符
三、使用正则表达式分隔字符串
split()方法用于实现根据正则表达式分隔字符串,并以列表的形式返回。格式为:
re.split(pattern,string,[maxsplit],[flags]) #pattern表示模式字符串
#string表示要匹配的字符串
#[magsplit]可选参数,表示最大的拆分次数
#flags可选参数,表示标志位,用于控制匹配方式
import re #导入re模块包
str1='@小明,@张大仙,@梦泪,@陈大白'
pattern= r's*@'
list1=re.split(pattern,str1) #用空格和@或单独的@分隔字符串
print("您的所有好友有:")
for item in list1:
if item != "": #输出部位空的元素
print(item) #打印输出好友名
谢谢!