【发布时间】:2019-11-24 21:39:16
【问题描述】:
我正在使用正则表达式来检查文件的名称。现在 Intellij 的控制台向我显示了这条消息:
False [] 正则表达式中的范围“\w-”;由 标记 m/^deploy-file-\d+_[\w _.]+\d+.log$/ at ...
代码
elsif ($filename =~ m/^deploy-file-\d+_[\w-_.]+\d+\.log$/) {
print "$filename match with pattern\n";
}
我想说到目前为止一切正常,而且模式运行良好。 我的问题是,为什么 intellij 会向我显示此消息?问题是什么? 对程序有影响吗?
我的模式也适用于https://regex101.com/r/Lj2r4r/2
【问题讨论】:
-
只需在最后n个字符类中添加
-,即将这个[\w-_.]改成[\w_.-]这个 -
@CodeManiac 这两者有什么区别?
-
-in between character class 代表范围