要求如题:
   例如:string orginStr="abc125dkdjabc56fljaslabc";
        string subStr="abc";
   要求:如何将orginStr中的subStr全部找到并替换为字符 a .我用的方法如下,但并没有实现效果,请帮我指出问题所在,并提供另一种解决方案.   if(orginStr.indexOf(subStr) != -1) //如果原字符串中有子字符串
    string tempStr=orginStr.Replace(subStr,"a");
  system.out.println(tempStr);
结果是orginStr字符串并没有变。
请帮忙指出错误.

解决方案 »

  1.   

    orginStr为什么要变?你又没有对它再赋值一次
      

  2.   


    直接:
    string tempStr=orginStr.Replace(subStr,"a"); 
      

  3.   

    结果是orginStr字符串并没有变。 //这样才正确啊!
      

  4.   

    orginStr = orginStr.Replace("a", subStr);
      

  5.   

    string strOut = Regex.Replace(strIn, @"abc", "a").ToString();
    http://www.cnblogs.com/netweb/archive/2008/11/17/1335058.html
      

  6.   

    orginStr本身不变。orginStr.Replace返回的值是你想要的。奇怪了,不是输出了吗system.out.println(tempStr); 
      

  7.   

    orginStr.Replace的返回值并没有赋给orginStr,所以就不变了。。
      

  8.   

    if(orginStr.indexOf(subStr) != -1) //如果原字符串中有子字符串 
        string tempStr=orginStr.Replace(subStr,"a"); 
      system.out.println(tempStr); 我觉得楼主这段代码应该会报错吧
    strng tempStr是在if中申明的
    跳出if判断在来打出tempStr是不行的!
    楼主可以直接写成if(orginStr.indexOf(subStr) != -1) //如果原字符串中有子字符串 
        orginStr=orginStr.Replace(subStr,"a"); 
      system.out.println(orginStr); 或则把tempStr在if外面定义
     string tempStr="";
    if(orginStr.indexOf(subStr) != -1) //如果原字符串中有子字符串 
       tempStr=orginStr.Replace(subStr,"a"); 
      system.out.println(tempStr); 
      

  9.   

    楼主代码没有错误,原字符串没有改变,tempStr才是你要的字符串,可以用writeline() 调试一下,是没有错误的,如果你的输出有问题的话,就检查下System.out.Println()吧
      

  10.   

    orginStr字符串没重新赋值   好像是变不了得把~