在String 对象中有个replace  
有字符串: String str = "20091102141233\rCSDN,Test\r\d";
  我想将字符串中的 \r 替换成 ; 
  用str.replace("\r", ";")  不行
  用str.replace("\\r", ";")  也不行
 
谢各位  帮忙指点下

解决方案 »

  1.   


    String sdf = "20091102141233\\rCSDN,Test\\r\\d";
    System.out.println(sdf);  //输出内容  20091102141233\rCSDN,Test\r\d  正确

    System.out.println(sdf.replace("\\r", ";")); 
      

  2.   


      public static void main(String[] args)
      { 
      String str = "20091102141233\\rCSDN,Test\\r\\d"; 
      str= str.replace("\\r", ";");
      System.out.println(str);
      } 
      

  3.   

    我估计是你漏了str=str.replace(); 直接写了个replace 等于没replace
      

  4.   

    由于 java 中,String 是final 类型的,所以,使用replace 之后,并没有把原来的字符串给改变,
    该方法返回了 一个新的 字符串。所以,使用该方法时,如楼上所说,不要漏掉 “str=”
      

  5.   


    String str = "20091102141233\\rCSDN,Test\\r\\d";
    System.out.println(str);
    System.out.println(str.replaceAll("\\\\", "").replaceAll("r",";"));
    这样写可以。后面有个d你没说不要哦。
      

  6.   


    System.out.println(str.replaceAll("\\\\r", ";"));
      

  7.   

    你str声明难道不报错?
    String str = "20091102141233\rCSDN,Test\r\d"; 
    下面为正确的操作。
    String str="20091102141233\\rCSDN,Test\\r\\d";
    System.out.println(str.replace("\\r", ";"));