繁体   English   中英

字符范围内的正则表达式字符类失败了intellij的jsLint检查

[英]Regex character class inside character range failing intellij's jsLint inspection

在此输入图像描述

纠正失败检查的最简单方法是什么? intellij(我能找到)中没有选项允许字符范围内的字符类。

如果你想允许一个文字连字符-在一个字符类中,你需要在开始后立即把它[ (请参阅http://www.regular-expressions.info/reference.html上的 “字符类”部分)或立即之前结束] (我发现在一些语言中至少作品),否则它视为表示一个范围。

还要注意@IanMackinnon关于这个问题的评论(虽然我在一次非常简短的搜索之后找不到这个权威的来源):“ 在字符类中显式转义连字符是另一个JSLint建议。 ” - 这是写在字面连字符的上下文。 无论jsLint是否需要通过检查,这可能是一种很好的做法,以便将来证明文字连字符,以防未来的开发人员通过在(未转义的)之间放置一些东西而意外地将类转换为范围连字符和开口(或关闭)括号。

因此,我认为你的正则表达式当前读作[\\w-+\\s]应该重写为[\\-\\w+\\s] )。

随后[\\w-+][\\-\\w+]等......

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM