Checkstyle:尾随空格regexp问题

use*_*250 6 regex checkstyle

我正在将Checkstyle添加到我的项目中,但检测空格的规则不够好(RegexpSingleline):

(?<=\S)\s+$
Run Code Online (Sandbox Code Playgroud)

它检测尾随空格并忽略仅有空格的行(它应该允许缩进的空行).它在大多数情况下工作正常,但它使用空行抱怨javadoc/multiline注释:

/**
 * Some text
 * 
 * More text
 */
Run Code Online (Sandbox Code Playgroud)

两行之间的空行是'星号 - 空白'(默认的Eclipse格式),从而触发规则,到目前为止我无法忽略这种特殊情况.如何针对此案例修复此正则表达式?

谢谢!

注意:它不需要是多行检查并验证该行是否确实是注释的一部分,它足够好作为单行.


总结所需的规则......

正则表达式应匹配具有尾随空格的行:

x = y;     
void function() { 
Run Code Online (Sandbox Code Playgroud)

除非行上只有空格(在此异常中允许最后一个空格之前使用单个星号,但仅当星号是唯一的非空白字符时):

(only whitespaces here, all ok)
/**
 * (this text is not here, and this line is ok - this case is my uncovered situation)
 */
Run Code Online (Sandbox Code Playgroud)

use*_*250 0

抱歉,我忘记了这个问题。

最后,我的最终正则表达式是这样的:

(?<!\A[ \t]*\*?)[ \t]$
Run Code Online (Sandbox Code Playgroud)