给定两个字符串s1
和s2
我想替换任何事件
s1s3s2
形式的s1s4s2
我的用例是替换"\textbf\{atext\}"
形式的子字符串
与"\**atext**"
如何在C#中实现这一目标?
答案 0 :(得分:1)
基本上:采取模式(包含3组),用模式中的第二组替换instr。
private string MyReplace(string inStr, string leaveStr)
{
string pattern = @"(.*?)(" + leaveStr + ")(.*)";
string repl = @"*$2*";
Regex rgx = new Regex(pattern);
return rgx.Replace(inStr, repl);
}
string x = MyReplace(@"\textbf\{atext\}", "atext");
x = MyReplace(@"\textbf\{1\}", "1");
完整字符串 - 组零($ 0)
(。*?) - 第一组($ 1)
(atext) - 第二组($ 2)
(。*) - 第三组($ 3)