我正在尝试匹配以列表中任何字符串开头的文件路径。这就是我正在使用的:

^/(dir1|dir2|dir3|tmp|dir4)/

我还试图匹配所有以/tmp/开头但之后不包含special的路径。

这应该匹配:
/tmp/subdir/filename.ext

但这不应该:
/tmp/special/filename.ext

我似乎找不到解决办法。任何建议将不胜感激。

最佳答案

试试^(?i)/(dir1|dir2|dir3|tmp(?!\/(special))|dir4)/.*(?i) =区分大小写,这将匹配SpEcial,SPECial,SpEcIAL等。
(?!\/(special)) = '/special'的负向超前

关于正则表达式匹配字符串开头但不包括,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19789335/

10-12 19:40