C# 正则表达式替换第一个匹配的字符

时间:2022-08-08 05:43:01
比如字符串:“aaa0009978796aaa”。我现在想替换第一个"aaa"而不替换第二个,使用Regex如何能做到呢?

3 个解决方案

#1


[
new Regex("").Replace("", "", 1)

三个空字符串自行查看方法注释,

string result = Regex.Replace(input, @"([a-zA-Z]+)(\d+)", "$2");

,
        static void Main(string[] args)
        {
            Console.WriteLine(new Regex("aaa").Replace("aaa0009978796aaa", "", 1));
            Console.WriteLine(Regex.Replace("aaa0009978796aaa", "^aaa", ""));
            Console.WriteLine(Regex.Replace("aaa0009978796aaa", "aaa(?!$)", ""));
        }
 
C# 正则表达式替换第一个匹配的字符]

#1


[
new Regex("").Replace("", "", 1)

三个空字符串自行查看方法注释,

string result = Regex.Replace(input, @"([a-zA-Z]+)(\d+)", "$2");

,
        static void Main(string[] args)
        {
            Console.WriteLine(new Regex("aaa").Replace("aaa0009978796aaa", "", 1));
            Console.WriteLine(Regex.Replace("aaa0009978796aaa", "^aaa", ""));
            Console.WriteLine(Regex.Replace("aaa0009978796aaa", "aaa(?!$)", ""));
        }
 
C# 正则表达式替换第一个匹配的字符]