求一个正则,要求里面除了  /*  别的符号都有(包括汉字)

解决方案 »

  1.   


    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    public class TT {
    public static void main(String[] args) {

     Pattern p = Pattern.compile("[^\\/\\*]*");
     Matcher m = p.matcher("1231#@$@sd中国");
     Matcher m1 = p.matcher("1231#@$@sd中国*");
     Matcher m2 = p.matcher("1231#@$@sd中国/");
     System.out.println(m.matches());
     System.out.println(m1.matches());
     System.out.println(m2.matches());
    }
    }结果:
    true
    false
    false
      

  2.   

    怎么没人帮忙啊,难道是我没说清楚。。
    再说下吧,我现在有个字符串String s = "asd.,:;()asd a    % */ad.aaaaa.javaa中  */aa asd{";
    就是这个s很大,里面什么符号都有,我要把里面的注释部分都拿掉,所以我想问问有没有一个正则表达式regex能够表达出 除了 /* 或者是 */ 以外所有的符号
    求一正则,能够匹配除了 /* 所有的符号(包括汉字)
      

  3.   

    我的错,我没说清楚,这里说下sorry
      

  4.   

    再说下我的问题
    String s = 一个文件内容,我已经弄好了
    要求能够把注释部分/*...*/过滤掉
    如果有好的方法给我看下,我自己的办法不太好
      

  5.   

    String str = "一个文件内容,已经弄好了";
     Pattern p = Pattern.compile("/\\*[\\w\\s]*\\*/");//中间的部分不完善,[\\w\\s]不能表示出所有的除*/外的字符
     Matcher m = p.matcher(str);
     while (m.find()) {
     String sub = m.group();

     int first = str.indexOf(sub);
     int last = str.indexOf(sub) + sub.length();
     str = str.substring(0, first) + str.substring(last);
     }
    System.out.println(str);
    如果大家有好的代码给我看看,谢谢
      

  6.   

     String str = "kd////*lkdsf";
     System.out.println(str.matches(".*/\\*.*"));
     String strt = "kd*/lkdsf";
     System.out.println(strt.matches(".*\\*/.*"));.*/\\*.*   这个能匹配上  /*   只要字符串中出现 /* 就返回 true
    .*\\*/.*   这个能匹配上  */   只要字符串中出现 */ 就返回 true差不多了吧
      

  7.   


    public class TTTT {
        public static void main(String[] args) {
            String string ="dfsdsdf /*1231#@$@sd中国*/ import";
            String s = string.replaceAll("(\\/\\*)(.*)(\\*\\/)", "");
            System.out.println(s);
        }
    }结果:
    dfsdsdf  import
      

  8.   

    我把你的string加长点,因为我现在是要处理一个文件那么长的字符串
    public class TestP {
    public static void main(String[] args) {
    String string = "dfsdsdf /*1231#@$@sd中国*/ import/*."
    + ",M[]\'{  *//*   A}1345371290384)(*&^%&^$$^&@!~*/";
    String s = string.replaceAll("(\\/\\*)(.*)(\\*\\/)", "");
    System.out.println(s);
    }
    }
    运行结果:
    dfsdsdf 
    少了那么多,显然不行
      

  9.   


    public class TTTT {
        public static void main(String[] args) {
         String string = "dfsdsdf   /* 1231#@$@sd中国 */ "
         +"import  /*. ,M[]\'{  */" 
         +"sdfsdf  /*   A}1345371290384)(/&^%&^$$^&@!~ */"
             + "jfsdkjfsk\'sdfsdf   /*   *&^%dfsfs */" 
             + "dfsdf&^$$^&@!~*/";
            String s = string.replaceAll("\\/\\*(([^\\/])*||([^\\*])*)\\*\\/", "");
            System.out.println(s);
        }
    }结果:
    dfsdsdf    import  sdfsdf  jfsdkjfsk'sdfsdf   dfsdf&^$$^&@!~*/
      

  10.   


    resultString=Regex.Replace(yourString, "/\*(?<=/\*).*?(?=\*/)\*/", "")
      

  11.   


    str = str.replaceAll("\\/\\*[\\d\\D]*?\\*\\/", "");勉强
      

  12.   

    String s = str.replaceAll("(?m)\\/\\*.*?\\*\\/", "");
      

  13.   

    String s="/*abc" +
    "\n" +
    "de*/" +
     "//fg"+
     "\n"+
    "hi,lz";

    String s1=s.replaceAll("((?m)(//.*$))|(/\\*([^/\\*]*)\\*/)", "");
    System.out.println(s1);