码迷,mamicode.com
首页 > 其他好文 > 详细

re.sub()

时间:2017-09-06 21:25:09      阅读:354      评论:0      收藏:0      [点我收藏+]

标签:中间   src   复杂   group   情况   功能   span   idt   count   

re是regular expression的所写,表示正则表达式

sub是substitute的所写,表示替换;

re.sub是个正则表达式方面的函数,用来实现通过正则表达式,实现比普通字符串的replace更加强大的替换功能;

举个最简单的例子:

如果目标字符串比较简单,如下操作就可以了:

string = "hello 111 world"
string.repalce(111,‘‘)
print string

结果为(注意,这里hello和world中间是两个空格):

hello  world 

但是如果比较复杂,比如:

技术分享

这种情况的时候正则更有用。 记得是 \ 啊

 对于输入的一个字符串,利用正则表达式(的强大的字符串处理功能),去实现(相对复杂的)字符串替换处理,然后返回被替换后的字符串

 

re.sub共有五个参数。

其中三个必选参数:patternreplstring

两个可选参数:countflags

第一个参数:pattern

pattern,表示正则中的模式字符串

需要知道的是:

  • 反斜杠加数字(\N),则对应着匹配的组(matched group)
    • 比如\6,表示匹配前面pattern中的第6个group
    • 意味着,pattern中,前面肯定是存在对应的,第6个group,然后你后面也才能去引用

比如,想要处理:

hello crifan, nihao crifan

且此处的,前后的crifan,肯定是一样的。

而想要把整个这样的字符串,换成crifanli

则就可以这样的re.sub实现替换:

string = "hello fan, nihao fan"
replaceStr = re.sub(r"hello (\w+), nihao \1","wb",string)
print replaceStr

这样不对啊?什么情况?

第二个参数:repl

repl,就是replacement,被替换,的字符串的意思。

repl可以是字符串,也可以是函数。

第三个参数:string

string,即表示要被处理,要被替换的那个string字符串。

周末我估计我也不会写完,完犊子

 

re.sub()

标签:中间   src   复杂   group   情况   功能   span   idt   count   

原文地址:http://www.cnblogs.com/wangboqi/p/7486888.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!