二次替换法?

回答CSDN的问题
http://community.csdn.net/Expert/topic/5721/5721502.xml?temp=1.241702E-02#top
把一个字符串中所有的a换成ab,但对于ab不变,请问,该如何正则?或其它方法?傻方法,快速高效的方法都行!


方法一

第一步  a -> ab
第二步 abb -> ab

使用方法str = str.Replace("a","ab");
str = str.Replace("abb","ab");

方法二

string temp = "aaababaaclkdjalfaab";         
            temp.Replace("ab", "a");
            temp.Replace("a", "ab");

先把所有ab变成a
再把所有a变成ab

方法三: (这个方法可能存在替换错误)
string a = "agsdgsdaba";
        string b = a.Replace("ab", "@");
        string c =b.Replace("a","c");
        c = c.Replace("@", "ab");
这个方法笨了点 ,但是一定没有问题, @这个符号就找一个不常用的就行或者好几个符号连一起
@#¥%  类似这样

第一种和第二种的替换思路应该有一个好听的名字才对。。有谁知道告诉一下

原文地址:https://www.cnblogs.com/lovebanyi/p/864234.html