我现在有一份代码,但是里面的注释全都已经乱码了
我想删掉所有的注释,应该怎么去写?
顺便学一学正则。。
注释有
/**ggg*/
//gg
两种

解决方案 »

  1.   

    public static void regexReplace(){
    String str="gewgew/**gegew*/gwegew//gwegew\n";
    System.out.println(str);
    String regex="/\\*\\*.*?\\*/|//.*?\n";
    str=str.replaceAll(regex, "");
    System.out.println(str);
    }
    测试通过没问题。。
      

  2.   

    感觉是你的eclipse编码设置和工程的编码不一致导致的。如果程序当中除了注释还有其他中文的话,可能也是乱码!可以试试转下编码是否能恢复正确
      

  3.   

    String str = "hello/*go to*/world";
    试过删除这种么?
      

  4.   

    String regex="/\\*\\*.*?\\*/|//.*?\n";\\是转义字符,因为*是特殊字符,需要转义.*?是匹配到第一符合条件的就结束。这里的结束条件是  \\*/  也就是遇到*/。|是或者的意思
    找//开头的,中间不管什么,直到这一行结束找到这些所有符合条件的,替换为"",就等于删了
      

  5.   

    再加一个 |正则条件   就可以了。。
    貌似条件里面没说有
    /*  */型的

    去掉一个\\*,String regex="/\\*.*?\\*/|//.*?\n";
      

  6.   

    还有试过这种形式没:String str = "hello/*This is \n a test case*/world";
    因为,我不确定在java语言的.是否匹配换行符
      

  7.   

    还有试过这种形式没:String str = "hello/*This is \n a test case*/world";
    因为,我不确定在java语言的.是否匹配换行符
    最前面加上(?s)可以无视换行。