• 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'))
  • 相关阅读:
    差分约束系统
    拓扑排序
    算法题笔记
    Pytorch学习笔记
    caffe增加新的layer
    跑实验技巧
    cmake & make入门
    CVPR2017_Learning Detailed Face Reconstruction from a Single Image
    Arxiv1801_PointCNN
    ICCV2015_Multi-view Convolutional Neural Networks for 3D Shape Recognition
  • 原文地址:https://www.cnblogs.com/sruzzg/p/12990129.html
Copyright © 2020-2023  润新知