求一个正则表达式:
******中学【2007】第1学期 
or
******中学[2007]第2学期
or
******中学〔2007〕第4周
字符+格式年度+第几***字符.
谢谢撒.

解决方案 »

  1.   

    做了个测试:
    package org.feelingsoft.testcenter;import java.util.regex.Matcher;
    import java.util.regex.Pattern;public class RegexExpression { /**
     * @param args
     */
    public static void main(String[] args) {
    String regex="^中学【2007】第1学期$";
    String str="******中学【2007】第1学期 ";
    Pattern p=Pattern.compile(regex);
    Matcher m=p.matcher(str);
    boolean b=m.find();
    System.out.println("\""+str+"\"+匹配正则表达式+\""
    +regex+"\"?  "+b);
    }}
    再调一下应该可以吧
      

  2.   

    楼主的意思没怎么表述清楚。我写了点代码,楼主参考吧。
    String testStr = "^_^***中学【2007】第1学期 ";
    String regex="\\D{6}中学(?:\\[|\\(|(|【)\\d{4}(?:\\]|\\)|)|】)第\\d\\D{1,2}";
    Pattern p=Pattern.compile(regex);
    Matcher m=p.matcher(testStr);
            if(m.find()){
             String str = testStr.substring(m.start(), m.end());
             System.out.println(str);
            }