当前位置: 首页 > 面试题库 >

Python用函数输出替换字符串模式

宓茂才
2023-03-14
问题内容

我在Python中有一个字符串 The quick @red fox jumps over the @lame brown dog.

我试图替换@以该词作为参数的函数输出开头的每个词。

def my_replace(match):
    return match + str(match.index('e'))

#Psuedo-code

string = "The quick @red fox jumps over the @lame brown dog."
string.replace('@%match', my_replace(match))

# Result
"The quick @red2 fox jumps over the @lame4 brown dog."

有聪明的方法吗?


问题答案:

您可以将函数传递给re.sub。该函数将接收一个match对象作为参数,用于.group()将匹配提取为字符串。

>>> def my_replace(match):
...     match = match.group()
...     return match + str(match.index('e'))
...
>>> string = "The quick @red fox jumps over the @lame brown dog."
>>> re.sub(r'@\w+', my_replace, string)
'The quick @red2 fox jumps over the @lame4 brown dog.'


 类似资料:
  • 函数名称:字符串替换 函数功能:字符串替换 函数方法 str,num = string.gsub(s,pattern,repl,n) 参数 类型 必填 说明 s string/table/number 是 原字符串 pattern string/table/number 是 待查找的字符串或模式匹配 repl string/table/number 是 待替换的字符串 n number 否 替换次

  • 本文向大家介绍Python正则替换字符串函数re.sub用法示例,包括了Python正则替换字符串函数re.sub用法示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python正则替换字符串函数re.sub用法。分享给大家供大家参考,具体如下: python re.sub属于python正则的标准库,主要是的功能是用正则匹配要替换的字符串 然后把它替换成自己想要的字符串的方法 re.

  • 问题内容: 我想做这个: 我基本上想返回字符串:{(str)-> str} 我一直在获取未定义的变量。 抱歉,这是我的第一篇文章。 问题答案: 由于Python中的字符串是不可变的,因此每次使用该方法时,都必须创建一个新字符串。每次替换调用也必须遍历整个字符串。这显然是低效的,尽管在此规模上并不明显。 一种替代方法是使用列表组合(docs,tutorial)一次遍历字符串并创建一个新字符列表。该方

  • 问题内容: 在Python中,什么时候以及什么时候使用字符串连接与字符串替换比较容易。由于字符串连接的性能有了很大的提高,这(成为更多)是一种风格上的决定,而不是一种实际的决定吗? 举一个具体的例子,如何处理灵活的URI: 编辑:也有关于加入字符串列表和使用命名替换的建议。这些是中心主题的变体,即在什么时候做正确的方法?感谢您的回复! 问题答案: 根据我的机器,连接的速度(明显)更快。但是从风格上

  • 本文向大家介绍Java字符串替换函数replace()用法解析,包括了Java字符串替换函数replace()用法解析的使用技巧和注意事项,需要的朋友参考一下 这篇文章主要介绍了Java字符串替换函数replace()用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 replace(char oldChar, char newChar)返回

  • 问题内容: 无论如何,有没有使用映射功能或更好的方法来替换整个数据框中的值? 我只知道如何在系列上执行映射。 我想用数字替换“ tesst”和“ set”列中的字符串,例如set = 1,test = 2 这是我的数据集的一个示例:(原始数据集非常大) 最终结果应该是 感谢您的指教, 问题答案: 那呢 正如@Jeff在评论中指出的那样,在熊猫版本<0.11.1中,手动添加到末尾以正确转换tesst