可能是Pattern pat = Pattern.compile(std,Pattern.COMMENTS);//此处报错,但我觉得没错 
这里的std描述的正则表达式不正确,从而不能正确创建Pattern对象,所以出错
希望能帖出异常。

解决方案 »

  1.   

    这些是抛出的异常。多谢各位java.util.regex.PatternSyntaxException: Illegal repetition near index 21
    public class JavaTest {
                         ^
    at java.util.regex.Pattern.error(Unknown Source)
    at java.util.regex.Pattern.closure(Unknown Source)
    at java.util.regex.Pattern.sequence(Unknown Source)
    at java.util.regex.Pattern.expr(Unknown Source)
    at java.util.regex.Pattern.compile(Unknown Source)
    at java.util.regex.Pattern.<init>(Unknown Source)
    at java.util.regex.Pattern.compile(Unknown Source)
    at graDesign.Exam.codeMatch(Exam.java:101)
    at graDesign.Exam.checkCode(Exam.java:144)
    at graDesign.Exam.Get(Exam.java:215)
    at graDesign.Exam.Save(Exam.java:276)
    at graDesign.Exam$2.mouseClicked(Exam.java:526)
    at java.awt.AWTEventMulticaster.mouseClicked(Unknown Source)
    at java.awt.Component.processMouseEvent(Unknown Source)
    at javax.swing.JComponent.processMouseEvent(Unknown Source)
    at java.awt.Component.processEvent(Unknown Source)
    at java.awt.Container.processEvent(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Window.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)
      

  2.   

    Pattern p = Pattern.compile("a*b",Pattern.COMMENTS);
     Matcher m = p.matcher("aaaaab");
     boolean b = m.matches();
     System.out.println(b);我这么写没有问题,看样子应该是传的参数问题,你加个断点跟踪一下.
      

  3.   

     Pattern pat = Pattern.compile(std,Pattern.COMMENTS);//此处报错,但我觉得没错 std加上引号...
      

  4.   

    你的std 里有特殊字符吧,建议把std打出来看看,有些字符需要处理一下