zoukankan      html  css  js  c++  java
  • 7替换

    """替换"""


    """
    在字符串中替换子串时,使用模块re并通过正则表达式指定被替换的子串可以实现更加强大的替换功能。模块re提供了两个实现字符串替换的方法
    一、sub()
    二、subn()
    """

    import re

    """
    一、sub()
    sub(pattern, repl, string, count=0, flags=0):
    pattern : 正则中的模式字符串。
    repl : 替换的字符串,也可为一个函数。当repl为空字符串时替换就变成删除
    string : 要被查找替换的原始字符串。
    count : 模式匹配后替换的最大次数,默认 0 表示替换所有的匹配。
    flags :一个可选标志,用于控制正则表达式匹配方式
    """

    print(re.sub(r'd+', 'zzg', 'a-123-b-456-c-789-d')) # a-zzg-b-zzg-c-zzg-d
    print(re.sub(r'd+', 'zzg', 'a-123-b-456-c-789-d', 2)) # a-zzg-b-zzg-c-789-d

    # 当repl为一个函数时举例
    def add(match):
    val = match.group()
    num = int(val) + 1
    return str(num)
    # 以下运行通过函数替换其结果为:a-124-b-457-c-790-d
    print(re.sub(r'd+', add, 'a-123-b-456-c-789-d'))

    # 当repl为空字符串时替换就变成删除
    print(re.sub(r'[aeiou]', '', 'Apple', flags=re.I)) # ppl


    """
    二、subn()
    返回值是包含两个元素的元组:(sub()的返回值,替换次数)
    """
    # ('a-124-b-457-c-790-d', 3)
    print(re.subn(r'd+', add, 'a-123-b-456-c-789-d'))
  • 相关阅读:
    Python列表生成
    Python 多线程
    Python面向对象编程
    map, reduce和filter(函数式编程)
    35个高级python知识点
    python之pyc
    Python之简单的用户名密码验证
    EasyUI 实例
    hibernate映射文件one-to-one元素属性
    Java中多对多映射关系
  • 原文地址:https://www.cnblogs.com/sruzzg/p/12990129.html
Copyright © 2011-2022 走看看