regex - 将多个正则表达式与 "or"串在一起安全吗?

标签 regex

我们有一个配置文件,其中列出了一系列正则表达式,用于排除我们正在构建的工具的文件(它扫描 .class 文件)。开发人员使用 OR“|”将所有单独的正则表达式附加到一个正则表达式中。像这样的运算符:

rx1|rx2|rx3|rx4

我的直觉 react 是,会有一个表达式会把事情搞砸并给我们错误的答案。他声称没有;它们通过“或”运算连接在一起。我无法想出解决这个问题的案例,但仍然对实现感到不安。

这样做安全吗?

最佳答案

它不仅安全,而且可能产生 better performance比单独的正则表达式匹配。

采用单独的正则表达式模式并测试它们。如果它们按预期工作,那么将它们“或”在一起,并且每个仍然会匹配。因此,您使用一个正则表达式而不是必须单独匹配的多个正则表达式模式增加了覆盖范围。

关于regex - 将多个正则表达式与 "or"串在一起安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1487908/

相关文章:

javascript - 有没有办法将这 3 个独立的正则表达式合二为一?

Python 正则表达式 group() 有效,但 findall() 结果不符合我的预期

python - 如何使用python在匹配中匹配具有相同模式的多个实例

r - 在正则表达式 R 中编写特殊字符列表

objective-c - NSRegularExpression 不匹配

javascript - 为什么 JavaScript 中的语法是 regex.test(string) 而不是 string.test(regex)?

PHP - 正则表达式重新格式化 JSON

c# - RegEx a* 是否匹配所有字符串?

javascript - 为什么 antlr4 在 LT 上会卡住!*

c# - 简单的正则表达式日期验证