Python:反向替换函数

时间:2011-01-13 04:13:37

标签: python replace


我不知道我怎么解释这个,但是这里......

>>> x = 'qwertyHelloWorldasdfg'
>>> x = inversereplace(x, 'HelloWorld', 'a')
>>> print x  
aaaaaaHelloWorldaaaaaa  

>>> y = 'qwertyHelloWorld'
>>> y = inversereplace(y, 'qwerty', '')
>>> print y
qwerty

在上面的函数中,它替换x中不是第二个参数和第3个参数的所有内容。
我该怎么做呢? 如果已有功能执行此操作,请告知我们。

提前致谢,
〜DragonXDoom

2 个答案:

答案 0 :(得分:4)

这应该有效:

def inversereplace(text, word, repl):
    parts = text.split(word)
    return word.join(repl*len(x) for x in parts)

答案 1 :(得分:1)

def inversereplace(s, p, q):
   s = s.split(p)
   s = map(lambda x: q * len(x), s)
   return p.join(s)