我们在使用re模块的时候,需要根据不同的使用需求选择不同的功能进行匹配。考虑到大家都是python新手,在方法的学习上,小编推荐常用的方法作为主要的学习目标。本文带来了两个函数,re.sub 和 re.compile。以下两部分分别说明。具体内容如下。
1、re.sub
re.sub 用于替换字符串中的匹配项。以下示例将字符串中的空格 ' ' 替换为 '-' :
import re
text = "JGood is a handsome boy, he is cool, clever, and so on..."
print re.sub(r'/s+', '-', text)
import re text = "JGood is a handsome boy, he is cool, clever, and so on..." print re.sub(r'/s+', '-', text)
re.sub的函数原型为:re.sub(pattern, repl, string, count)
其中第二个函数是替换后的字符串;本例中为'-'
第四个参数是指替换的次数。默认为 0,表示每个匹配项都会被替换。
re.sub 还允许使用函数对匹配项的替换进行复杂处理。例如:re.sub(r'/s', lambda m: '[' + m.group(0) + ']', text, 0);将字符串中的空格 ' ' 替换为 '[ ]'。
2、re.compile
正则表达式可以编译成正则表达式对象。那些经常使用的正则表达式可以编译成正则表达式对象,可以提高一定的效率。以下是正则表达式对象的示例:
import re
text = "JGood is a handsome boy, he is cool, clever, and so on..."
regex = re.compile(r'/w*oo/w*')
print regex.findall(text) #查找所有包含'oo'的单词
print regex.sub(lambda m: '[' + m.group(0) + ']', text) #将字符串中含有'oo'的单词用[]括起来。
import re text = "JGood 是一个帅气的男孩,他很酷,很聪明,等等......" regex = re.compile(r'/w*oo/w*') print regex.findall(text) #find所有包含 'oo' 的单词 print regex.sub(lambda m: '[' + m.group(0) + ']', text) # 用 [] 将字符串中包含 'oo' 的单词括起来。
以上就是python re模块常见使用方法整理,当然re模块的方法比较多,本篇因为篇幅有限,会在之后的文章中不断更新这部
分的使用。
更多Python学习指路:
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 范围在python中是什么意思09/11
- ♥ python函数返回多个返回值08/17
- ♥ python下载的库包放在哪里10/11
- ♥ python是否使用编辑器编写代码?10/22
- ♥ python库是什么意思10/18
- ♥ 如何在python中安装插件09/21
内容反馈