修改
@Ulugbek - 我已经编辑过来提问以澄清。
我使用模式作为分隔符,需要通过使用C#在模式之间插入$来替换连续的模式出现,但目前它只替换模式的第一个实例。
除了多次替换之外,还有什么我需要做的吗?或者,我是否需要使用RegEx?
由于
String s = "ABCThis is a delimited valueABCABCABCAnd another delimited valueABC";
String.Replace("ABCABC", "ABC$ABC"); //misses second instance of the consecutive patterns instances
结果:
ABCT这是一个定界的值ABC $ ABCABCA另一个分隔的值ABC
期望的结果:
ABCT这是一个分隔值ABC $ ABC $ ABCA另一个分隔值ABC
Ulugbek解决方案:
ABC $这是一个分隔的值ABC $ ABC $ ABC $和另一个分隔 valueABC $
由于
答案 0 :(得分:5)
您可以重新考虑策略。将所有ABC
替换为ABC
后加ABC$
。
string s = "ABCABCABC";
string output = Regex.Replace(s, "ABC(?=ABC)", "ABC$");