string a = "001='a=1 and 001 between a and c' and 002 like '%a%' and 003 between '2002-1-1'   and '2002-12-1' and 004 in(1,2,3,4)";有如上所示字符串,要把单引号外面的001, 002 ,003,004 分别替换成T001,T002,T003,T004。
请名师指点。

解决方案 »

  1.   

    如果要替换的字符串固定就用下面的方法吧
    a.replace(' 001 ',' T001 ').replace(' 002 ',' T002 ').replace(' 003 ',' T003 ')
    否则就用正则表达式
      

  2.   

    补充一下:
    a=a.replace(' 001 ',' T001 ').replace(' 002 ',' T002 ').replace(' 003 ',' T003 ')
      

  3.   

    不嫌麻烦就这样,不过没有通用性..a =a.Replace("001=", "T001=").Replace("002 like", "T002 like").Replace("003", "T003").Replace("004", "T004");
      

  4.   

    更有更好的办法吗?
    liujia_0421:你的办法也不可取,多关键字组合后会很麻烦。如果单引号内包含'001=',怎么办呢?
    大家开动脑筋。我的目的很简单:就是要把引号外面的001,002,003.....,替换成T001,T002,T003....。目前本人已经将问题解决了,想争求一下更好的做法,下次公布解决方案。
      

  5.   

    问题已经解决了。
    比较麻烦,有需要可以联系我。[email protected]