import java.util.regex.*;public class Test {
  public static void main(String args[]) {
    String sourceString = "123456789-123456";
    String thePattern = "^\\d{9}-\\d{6}$";    Pattern pattern = Pattern.compile(thePattern);
    Matcher match = pattern.matcher(sourceString);
    if (match.find()) {
      System.out.println("matched");
    } else {
      System.out.println("not matched");
    }
  } 
}   

解决方案 »

  1.   

    java中如下:
    public class Test{ public static void main(String args[]){
    String strRp = "^(\\d{9})(-)(\\d{5})$";
    String strTmp ="123456789-12345";
    System.out.println("a = " + strTmp.matches(strRp));
    }
    }
    javaScript中如下:
    function checkNum() {
    var part = /^(\d{9})(\-)(\d{5})$/;
    var str = "123456789-12345";
    if (part5.test(str)) {
    alert("true");
    } else {
    alert("false");
    }
    }
      

  2.   

    "^\\d{9}-\\d{6}$",这个式子中\\d{9}表示什么意思啊?
    我觉得用\d{9}不就可以了吗?