Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我想用java正则表达式实现这个格式12345-1234567-1_Java_Regex - Fatal编程技术网

我想用java正则表达式实现这个格式12345-1234567-1

我想用java正则表达式实现这个格式12345-1234567-1,java,regex,Java,Regex,我想实现一个巴基斯坦的cnic号码标准格式,如下所示:12345-1234567-1 但我对此一无所知。我发现以下代码用于此目的,但它也给出了NetBeans中的错误 private void idSearchKeyPressed(java.awt.event.KeyEvent evt) { String cnicValidator = idSearch.getText(); if (cnicValidator.matches("^[0-9+]{5}-[0-9+]{7}-[0-

我想实现一个巴基斯坦的cnic号码标准格式,如下所示:
12345-1234567-1

但我对此一无所知。我发现以下代码用于此目的,但它也给出了NetBeans中的错误

private void idSearchKeyPressed(java.awt.event.KeyEvent evt) {
    String cnicValidator = idSearch.getText();

    if (cnicValidator.matches("^[0-9+]{5}-[0-9+]{7}-[0-9]{1}$")) {
       idSearch.setEditable(true);
    }
    else {
        idSearch.setEditable(false);
    }        
}

模式是正确的。但它可以浓缩为:

^[\\d]{5}-[\\d]{7}-\\d$
idSearch
来自哪里?如果它不是类的最后一个成员,您就不能以这种方式访问它。因此,请确保
idSearch
idSearchKeyPressed
中可用。还要确保没有尾随空格或类似的内容。你可以打电话来

cnicValidator = cnicValidator.trim();
以下示例返回两个正则表达式版本的
true

public static void main(String... args){
    String id = "35241-7236284-4";

    System.out.println(id.matches("^[\\d]{5}-[\\d]{7}-\\d$"));
    System.out.println(id.matches("^[0-9+]{5}-[0-9+]{7}-[0-9]{1}$"));
}
“它也会在NetBeans中产生错误”您是否有机会告诉我们这是哪个错误?