【发布时间】:2017-04-23 12:06:06
【问题描述】:
您对如何安全地替换字符串有任何想法或提示吗?
例子:
string Example = "OK OR LOK";
现在我想将“OK”替换为 true,将“LOK”替换为 false。
Example = Example.Replace("OK", "true");
Example = Example.Replace("LOK", "false");
现在结果是:Example = "true or Ltrue";
结果应该是:Example ="true or false";
我了解这个问题,但我不知道如何解决这个问题。
谢谢
【问题讨论】:
-
先替换 LOK,再替换 OK,因为 OK 是 LOK 的子集
-
@BugFinder - 出色的观察和审查。
-
另一种选择是基于正则表达式的替换。
-
我对替换项的顺序没有影响
-
@WiktorStribiżew:这不是重复的。 OP 不想只替换整个单词,也不想替换子字符串。但更好匹配的字符串优先级更高,应该先替换。