• Python的替换函数——strip(),replace()和re.sub()(转)


    原文地址:http://blog.csdn.net/zcmlimi/article/details/47709049

    在Python中常用的三个“替换”函数是strip(),replace()和re.sub(),下面来讲讲这三个函数的用法。
    一.replace()
    基本用法:对象.replace(rgExp,replaceText,max)
    其中,rgExp和replaceText是必须要有的,max是可选的参数,可以不加。
    rgExp是指正则表达式模式或可用标志的正则表达式对象,也可以是 String 对象或文字;replaceText是一个String 对象或字符串文字;max是一个数字。对于一个对象,在对象的每个rgExp都替换成replaceText,从左到右最多max次。
    下面给出例子:
    

    二.re.sub()
    要用sub(),记住要import re哦!
    re.sub()有5个函数,三个必选参数pattern,repl,string;两个可选参数count,flags
    re.sub(pattern,repl,string,count,flags)
    pattern:表示正则表达式中的模式字符串;
    repl:被替换的字符串(既可以是字符串,也可以是函数);
    string:要被处理的,要被替换的字符串;
    count:匹配的次数
    

    #re.sub()匹配到对象并做一定的改变
    In [1]: import re
    
    In [2]: def replace(result):
       ...:     print(result.group())
       ...:     r = int(result.group()) + 50
       ...:     return str(r)
       ...: 
    
    In [3]: re.sub(r"d+", replace, "x=100, y=50")
    100
    50
    Out[3]: 'x=150, y=100'
    
    In [4]: 
    
    调用sub()除了可以用re.sub(),还可以如上例子中的c一样,用re.compile()模式函数。
    更多关于re.sub()函数的问题可以看这里,这个sub()函数的很多资料我都是看这里的:
    http://www.crifan.com/python_re_sub_detailed_introduction
    三.strip()
    strip()并不是一个真正意义上的替换函数,它是用来删除一些字符的,所以我们可以把这看作是把字符串中的一些字符替换成空(不是空格,是空),有些时候,strip()用起来很方便。
    对于这个函数要记住3点:
    1.如果我们想要删除位于首位的其他字符,我们可以用"对象.strip(其他字符)",它将删除所有包含在“其他字符”中的字符,当然只删除位于首位的字符。如果首位有空格,就无法删除这些字符了。
    

    如上图,因为字符串s1中,开头有空格,所以在替换字符‘0G’的时候没法替换,而s2因开头没有空格,所以能把‘0’和‘G’全部替换了。
    2.当参数为空时(即括号里没东西),默认删除空白符(包括'
    ', '
    ',  '	',  ' '),但是只能删除开头和结尾的,不能删除字符串中间的。如下图:
    

    在这个例子里,开头和结尾的空格都被去掉了,但是几个英文字符串间的空格并没有被去掉,这就是strip()函数的一个缺陷,它并不能删除字符串中间的空格。
    3.strip()这个函数还有两个版:lstrip()和rstrip(),分别是用来删除开头的“其他字符”的,如下图:
    

  • 相关阅读:
    POJ 3685 Matrix (二分套二分)
    mybatis-plus
    mysql 5.7 压缩包安装教程
    mysql备份
    mysql外键策略
    springboot使用RestTemplate以post方式发送json字符串参数(以向钉钉机器人发送消息为例)
    查询优化
    Spring Boot 创建定时任务(配合数据库动态执行)
    解决springboot序列化 json数据到前端中文乱码问题
    Mybatis 批量插入
  • 原文地址:https://www.cnblogs.com/nyist-xsk/p/7419354.html
Copyright © 2020-2023  润新知