zoukankan      html  css  js  c++  java
  • 替换文件中字符(正则)

    替换文件中字符(正则)
    #!/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)





  • 相关阅读:
    OC与JavaScript的交互
    号码运商判断
    iOS 适配https(AFNetworking3.0为例)
    UIlabel的字体自适应属性
    iOS10遇到有推送的Demo真机报错的解决
    UIView的setNeedsDisplay和setNeedsLayout
    ubuntu---设置路径时,profile和bashrc区别
    python---类的定义和使用
    ubuntu---鼠标变成空心十字架
    python--- 遍历一个图片文件夹 并 输出到txt文件
  • 原文地址:https://www.cnblogs.com/highroom/p/a920008110791660e2feb59427f2aa3b.html
Copyright © 2011-2022 走看看