我想替换给定字符串中的第一个匹配项.
我怎样才能在.NET中实现这一目标?
string input = "Hello World!";
string pattern = "(World|Universe)";
string replacement = "$1";
string result = Regex.Replace(input, pattern, replacement);
Run Code Online (Sandbox Code Playgroud)
有了下面的例子,结果将是"Hello World!",当$1第一组被替换时(World|Universe),但是我想要的结果是"Hello $1!"
该Regex.Escape方法旨在用于转义正则表达式模式,而不是替换,因为它可以转义其他字符,如斜杠和其他正则表达式模式字符.对我的问题的明显解决方法是让我的替换等于"$$1",并将实现"Hello $1!",但我想知道美元符号是否是我必须逃脱的唯一值(假设replacement用户生成,我不提前知道) ,还是有一个辅助功能,已经这样做了.
有没有人知道一个函数来逃避使用的替换值Regex.Replace(string input, string pattern, string replacement)?
我有这个字符串:
Hello my name is Marco
Run Code Online (Sandbox Code Playgroud)
我想替换第一个空格(在Hello和之间my)<br />.只有第一个.
在C#/ .NET 3.5上执行此操作的最佳方法是什么?
string input = "testeeeeeee";
char[] temp = input.ToCharArray();
var test = Regex.Replace(input.Replace(temp[1].ToString(), "@").Trim(), @"\s+", " ");
Console.WriteLine(test);
Run Code Online (Sandbox Code Playgroud)
这是我现在的代码,我希望我的第二个字符串上的字符串被替换为"@",现在问题是每个e都将被替换为@,如何修复它只会替换第二个字符和而已?