C#中的查找替换模式

Vin*_*rya 0 c# regex string

我有一个复杂的情况,我需要解析一个很长的字符串.我必须在字符串中查找模式并将该模式​​替换为另一模式.我知道我可以简单地使用find/replace方法,但我的情况有点不同.

我有一个包含以下模式的字符串

#EPB_IMG#index-1_1.jpg#EPB_IMG


#EPB_IMG#index-1_2.jpg#EPB_IMG


#EPB_IMG#index-1_3.jpg#EPB_IMG


#EPB_IMG#index-1_4.jpg#EPB_IMG
Run Code Online (Sandbox Code Playgroud)

我希望它格式化为

#EPB_IMG#index-1_1.jpg|index-1_2.jpg|index-1_3.jpg|index-1_4.jpg#EPB_IMG
Run Code Online (Sandbox Code Playgroud)

我不太了解Regex并寻求帮助.

Sim*_*ead 6

正则表达式是矫枉过正:

var parts = s.Split(new string[] { "#EPB_IMG", "#", "\n", "\r" }, StringSplitOptions.RemoveEmptyEntries);
var result = string.Join("|", parts);

Console.WriteLine("#EPB_IMG#" + result + "#EPB_IMG"); // prints your result.
Run Code Online (Sandbox Code Playgroud)