【发布时间】:2018-12-24 19:31:57
【问题描述】:
我希望所有复选框变量都以“ckx”开头。
^.*JCheckBox((?! ckx).)*$
这适用于变量声明,但也匹配定义。 例如。
ckxSomeCheckbox = new JCheckBox();
知道如何防止此代码显示为错误吗?
有效例子:
private JCheckBox ckxTest = new JCheckBox();
public javax.swing.JCheckBox ckxTest;
无效示例:
private JCheckBox abcTest;
private JCheckBox abcckxTest;
ckxTest = new JCheckBox();
ckxTest = new JCheckBox("");
【问题讨论】:
-
原始正则表达式不允许在
ckx之后的任何地方使用空格JCheckBox。如果你想在一开始就阻止它,你可能需要^.*JCheckBox\s*\((?!\s*ckx).*$。为了防止匹配(),请将其添加为前瞻:^.*JCheckBox\s*\((?!\))(?!\s*ckx).*$。如果您在字符串文字中使用它,则双重转义\字符。 -
谢谢,但还不行。我提供了一些例子。
-
哦对不起..这是ckx
-
也许你想要求 var 在
ckxafterJCheckBox之后开始?见^.*JCheckBox\s+ckx.*$。 -
您要配置哪种 Checkstyle 检查?
标签: regex eclipse checkstyle