Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.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
如何调试javax.validation.constraints.Pattern正则表达式?_Java_Regex_Validation - Fatal编程技术网

如何调试javax.validation.constraints.Pattern正则表达式?

如何调试javax.validation.constraints.Pattern正则表达式?,java,regex,validation,Java,Regex,Validation,我正在使用javax.validation.constraints.Pattern注释来验证来自屏幕的数据是否符合我的要求 我的代码如下: import javax.validation.constraints.Pattern; @Pattern(regexp = "[a-zA-Z0-9-]+") private String regNo; 数据应按照以下样本数据进行验证 正确的测试用例(以下为可接受值): 试验 测试123 Test-123 123试验 132456 15-564 试样

我正在使用javax.validation.constraints.Pattern注释来验证来自屏幕的数据是否符合我的要求

我的代码如下:

import javax.validation.constraints.Pattern;

@Pattern(regexp = "[a-zA-Z0-9-]+")
private String regNo;
数据应按照以下样本数据进行验证

正确的测试用例(以下为可接受值):

  • 试验
  • 测试123
  • Test-123
  • 123试验
  • 132456
  • 15-564
  • 试样
但是使用的正则表达式不接受以下数据

  • 132456
  • 15-564

我是否使用了错误的正则表达式?

因此您只有两种情况:

  • (字母或数字)-(字母或数字)
  • (字母或数字)
  • 此正则表达式应适用于:

    (\w+-\w+)|(\w+)
    

    您已将
    15-564
    列为正反两种情况。这里的逻辑是什么?
    132456
    是正反两种情况。这不能充分解释正则表达式应该封装的逻辑。是否编辑问题以添加此内容?正确的测试用例意味着这些值应该接受,而不是接受测试用例。我会更新更简单的描述,抱歉描述不正确。感谢您的回复。对不起,我的描述不正确。我已经更新了描述,请你再检查一下。