替换子字符串中的字符串

时间:2010-10-22 01:55:16

标签: string

我有这个字符串: “快速的棕色f0x在懒惰的d0g中跳跃,快速的棕色f0x在懒惰的d0g中跳跃。”。

我需要一个功能,将“棕色”和“懒惰”之间的所有替换为“ o ”。所以输出看起来像这样: “快速的棕色狐狸跳过懒惰的d0g,快速的棕色狐狸跳过懒惰的d0g。”。 所以它会看起来遍布字符串,最重要的是将保留所有其他零。

function(text, leftBorder, rightBorder, searchString, replaceString) : string;

有什么好的算法吗?

1 个答案:

答案 0 :(得分:1)

如果您有Python,这里只是一个使用字符串操作的示例,例如split()indexing等。您的编程语言也应该具有这些功能。

>>> s="The quick brown f0x jumps 0ver the lazy d0g, the quick brown f0x jumps 0ver the lazy d0g."
>>> words = s.split("lazy")
>>> for n,word in enumerate(words):
...     if "brown" in word:
...         w = word.split("brown")
...         w[-1]=w[-1].replace("0","o")
...         word = 'brown'.join(w)
...     words[n]=word
...
>>> 'lazy'.join(words)
'The quick brown fox jumps over the lazy d0g, the quick brown fox jumps over the lazy d0g.'
>>>

步骤:

  1. 将“懒惰”上的字词拆分为数组A
  2. 浏览A中的每个元素以查找“brown”
  3. 如果找到
  4. ,则将“褐色”拆分为数组B.您要更改的部分是 最后一个元素
  5. 用您的编程语言提供的任何方法替换它
  6. 使用“brown”
  7. 加回阵列B.
  8. 在第一个数组A
  9. 中更新此元素
  10. 最后,使用“lazy”
  11. 加入整个字符串