Leo*_*kan 2 .net c# regex string
在我的应用程序中,我想编辑字符串(将许多实例作为一个)
例如我有字符串:
string str = "/r/n/r/n/r/n Some text /r/n/r/n/r/n 45678123";
Run Code Online (Sandbox Code Playgroud)
想要的结果:
"/r/n Sometext /r/n 45678123";
Run Code Online (Sandbox Code Playgroud)
功能如下:
string newStr = str.MakeToOneInstance("/r/n");
Run Code Online (Sandbox Code Playgroud)
我需要让它变得动态(在我的例子中,我不知道我有多少/ r/n组合)
它可以是任何组合的另一个例子 - > "dodo you have an answer";
string newStr = str.MakeToOneInstance("do"); -> "do you have an answer";
Run Code Online (Sandbox Code Playgroud)
我知道我可以制作字符串扩展方法,它将使用正则表达式,但问题是我是否有类似于.Net的内容或者可能是原始的方式来执行...
您可以使用 Regex.Replace(input, @"(?:\r\n){2,}", Environment.NewLine)
这将替换\r\n单个新行的多个出现.
你可以把它放在这样的扩展中:
public static class MyExtensions
{
public static string MakeToOneInstance(this String str, string toReplace)
{
return Regex.Replace(str, string.Format("\\b(?:{0}){1}\\b", Regex.Escape(toReplace), "{2,}"), toReplace);
}
}
Run Code Online (Sandbox Code Playgroud)
并按照您的意愿使用它.
例:
"oooooo loop".MakeToOneInstance("o")
"o loop"
Run Code Online (Sandbox Code Playgroud)