Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/325.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 选中要匹配并允许合法注释参数值的样式_Java_Checkstyle - Fatal编程技术网

Java 选中要匹配并允许合法注释参数值的样式

Java 选中要匹配并允许合法注释参数值的样式,java,checkstyle,Java,Checkstyle,我有一个注释,可以将参数的值作为字符串数组的字符串表示形式(例如“[\“Value1\”,“Value2\”])。因此,注释的值基本上是一个字符串。例如 @MyAnn(value = "[\"V1\"]") 有效的字符串集只能是: value=“[\“V1\”、\“V2\”、\“\”]”和“ value=“[]” value=“[]” value=”“ 与这些字符串匹配的合法正则表达式是: value = (?:\"\[\s*(\\\".*\")*\s*\]\"|\"\"|\"\[\s*\]\

我有一个注释,可以将参数的值作为字符串数组的字符串表示形式(例如“[\“Value1\”,“Value2\”])。因此,注释的值基本上是一个字符串。例如

@MyAnn(value = "[\"V1\"]")
有效的字符串集只能是:

  • value=“[\“V1\”、\“V2\”、\“\”]”和“
  • value=“[]”
  • value=“[]”
  • value=”“
  • 与这些字符串匹配的合法正则表达式是:

    value = (?:\"\[\s*(\\\".*\")*\s*\]\"|\"\"|\"\[\s*\]\")
    
    我希望有一个checkstyle,这样当有人使用
    @MyAnn
    时,该值必须是4中的一个。任何其他情况都应报告为违规

    我遇到的问题是如何为无效值指定正则表达式(我的是有效值)。因为需要我为非法值指定正则表达式


    解决这个问题的方法是什么?

    围绕您的正则表达式负前瞻断言:

    ^((?!(?:\"\[\s*(\\\".*\")*\s*\]\"|\"\"|\"\[\s*\]\")).)*$