如字符串  "hello [:]" ,想中文冒号替换成英文冒号:,而[替换成空格符。
     String的replaceAll不起作用,主要看正则表达式如何构造了?

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【haitao8686】截止到2008-06-29 11:28:06的历史汇总数据(不包括此帖):
    发帖数:3                  发帖分:100                
    结贴数:2                  结贴分:100                
    未结数:1                  未结分:0                  
    结贴率:66.67 %            结分率:100.00%            
    楼主加油
      

  2.   

    replaceAll("\\[:\\]", " : ");
      

  3.   

    String s ="hello [:]".replace(":",":").replace("["," ");System.out.println(s);
    非要用replaceAll吗?
      

  4.   


    public static void main(String[] args) {
    String str1 = "hell[:]";
    String str2 = "hell[:]".replaceAll(":", ":")
    .replaceAll("\\[", "")
    .replaceAll("\\]", "");
    System.out.println(str1);
    System.out.println(str2);
    }
    或者:
    public static void main(String[] args) {
    String str1 = "hell[:]";
    String str2 = "hell[:]".replace(":", ":")
    .replace("[", "")
    .replace("]", "");
    System.out.println(str1);
    System.out.println(str2);
    }
      

  5.   

    public class Test { public static void main(String[] args) {
    String s = "hello [:]";
    s = s.replaceAll(":", ":");
    s = s.replaceAll("\\[", " ");
    System.out.println(s);
    }}
      

  6.   

    2楼5楼正解啊, 不知道楼主要得是不是这个效果public class T { public static void main(String []args){
    String s = "hello[:]";
    char[] sChars = new char[s.length()];
    s.getChars(0, s.length(), sChars, 0);
    System.out.println("s length:"+ s.length());
    //打印出字符串每个字符字符编码
    for(int i=0;i<s.length();i++){
    System.out.print(sChars[i]+""+ (int)sChars[i]+" ");
    }
    System.out.println("");

    s = s.replaceAll("\\[:\\]", " : ");
    System.out.println("after....");
    s.getChars(0, s.length(), sChars, 0);
    System.out.println("s length:"+ s.length());
    for(int i=0;i<s.length();i++){
    System.out.print(sChars[i]+""+ (int)sChars[i]+" ");
    }
    }
    }结果s length:8
    h104 e101 l108 l108 o111 [91 :65306 ]93
    after....
    s length:8
    h104 e101 l108 l108 o111  32 :58  32
      

  7.   

    可以肯定的是用replace("\\[","");是肯定可以的
      

  8.   

    其实我也用了 \\[, 但一直搞不定,还要 :  ,后来换了eclipse版本,好像又达到效果了,有点搞不清楚!
    不管怎样,谢谢大伙了!