我们说我有一个文字:
"他的名字是杰克。杰克喜欢骑自行车"
您建议使用哪种方法来编辑单词" Jack"例如,我想逐一对每个" Jack"进行具体的更改。我尝试过使用Remove()和Replace(),但这些方法会编辑所有" Jack"在文中。
答案 0 :(得分:2)
Regex.Replace(String, MatchEvaluator)可能就是您所需要的。在指定的输入字符串中,它将所有与指定正则表达式匹配的字符串替换为MatchEvaluator委托返回的字符串。
所以你的MatchEvaluator代表可以决定更换每一个" Jack"用。
例如:
string s = "His name is Jack. Jack likes to ride a bike";
int count = 0;
string s2 = Regex.Replace(s, "Jack", match => {
count++;
return count > 1 ? "Jack2" : "Jack1";
});
s2是:
他的名字是杰克1。 Jack2喜欢骑自行车