首页 > 其他 > 详细

替换文件中字符(正则)

时间:2015-02-06 16:28:39      阅读:173      评论:0      收藏:0      [点我收藏+]
替换文件中字符(正则)
#!/usr/bin/env python

import re

filename = 'source.c'
text = open(filename).read()

r = re.compile(r'/\*.*?\*/', re.DOTALL)
cr= re.compile('Copyright')

def sub_copyright(m):
    mo = cr.search(m.group())
    if mo:
        return '/*xxx*/'
    else:
        return m.group()

result = r.sub(sub_copyright, text)
open('result.c', 'w').write(result)


可以使用sub()方法来进行查询和替换,sub方法的格式为:sub(replacement, string[, count=0])

replacement是被替换成的文本

string是需要被替换的文本

count是一个可选参数,指最大被替换的数量

例子:

import re
p = re.compile(‘(blue|white|red)’)
print(p.sub(‘colour’,'blue socks and red shoes’))
print(p.sub(‘colour’,'blue socks and red shoes’, count=1))

输出:

colour socks and colour shoes
colour socks and red shoes

subn()方法执行的效果跟sub()一样,不过它会返回一个二维数组,包括替换后的新的字符串和总共替换的数量

例如:

import re
p = re.compile(‘(blue|white|red)’)
print(p.subn(‘colour’,'blue socks and red shoes’))
print(p.subn(‘colour’,'blue socks and red shoes’, count=1))

输出

(‘colour socks and colour shoes’, 2)
(‘colour socks and red shoes’, 1)





替换文件中字符(正则)

原文:http://www.cnblogs.com/highroom/p/a920008110791660e2feb59427f2aa3b.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!