目标字符串是"A + A_RT + B*A+AA"
. 我想A
用B
和B
替换A
。但我不想替换A_RT
toB_RT
或AA
to BB
。预期的结果是"B + A_RT + A*B+AA"
。我怎样才能在 C# 中做到这一点?谢谢。
目前我使用以下代码,但它将替换A_RT
为B_RT
...
IDictionary<string, string> map = new Dictionary<string, string>()
{
{"A","B"},
{"B","A"},
};
string str = "A + A_RT + B*A+AA";
var regex = new Regex(String.Join("|", map.Keys));
var newStr = regex.Replace(str, m => map[m.Value]);