例如有一个字符串“大结局” ,怎样正则匹配这样的规则 :当这个字符串以 )、)或空格结尾时,后面可以跟其他任意字符(例如 :“大结局)abc11”),当这个字符串后面跟的不是这三种符号时,那他后面什么都不能跟。

解决方案 »

  1.   


    String reg = "大结局($|[)、)].*)";
    System.out.println("大结局)abc11".matches(reg));
    System.out.println("大结局)abc11".matches(reg));
    System.out.println("大结局、abc11".matches(reg));
    System.out.println("大结局aabc11".matches(reg));
    System.out.println("大结局局abc11".matches(reg));
    System.out.println("大结局Cabc11".matches(reg));没怎么看懂,什么是这样?
      

  2.   


    感觉这样好理解一点:【大结局([\\s|)|)].*)+】
    空格\\s,大括号),小括号)任意一种情况:【[\\s|)|)]】
    出现上面三种情况,后面可以任意加东西【[\\s|)|)].*】
    【大结局】要不只有自己,要不后面跟上面的字串,就是说上面的情况可有可无,使用【+】
    因此有【大结局([\\s|)|)].*)+】
    -----------------------------------------感觉这样直观一些
            String reg = "大结局([\\s|)|)].*)+";
            System.out.println("大结局)abc11".matches(reg));
            System.out.println("大结局)abc11".matches(reg));
            System.out.println("大结局 abc11".matches(reg));
            System.out.println("大结局abc11".matches(reg));
      

  3.   

    是“大结局”后面跟那些符号还是最后是那些符号?
    如果是后面紧跟那些符号的话 String reg = "大结局( |)|\\)).*";
    如果是最末尾的话  String reg = "大结局.*?( |)|\\))";