替换字符串中第一次出现的模式

时间:2019-01-29 10:54:13

标签: string rust

我正在尝试编写一个replace_first()函数,但找不到正确的方法来管理它。

我有以下输入内容:

let input = "Life is Life".to_string();

我想将此类输入替换为以下浪漫输出:

My wife is Life

replace函数替换所有出现的事件。如何实现replace_first函数,以便可以像下面这样使用它:

let input = "Life is Life".to_string();
let output = input.replace_first("Life", "My wife");
println!({}, output); // Expecting the output as "My wife is life"

1 个答案:

答案 0 :(得分:5)

使用replacen

  

将模式的前N个匹配项替换为另一个字符串。

     

replacen创建一个新的字符串,并从该字符串中复制数据   切成薄片。这样做时,它会尝试查找与   图案。如果找到任何内容,则将其替换为替换字符串   最多计数一次。

let input = "Life is Life".to_string();
let output = input.replacen("Life", "My wife", 1);

assert_eq!("My wife is Life", output);

Rust Playground