如何在Synapse通配符文件路径中添加OR条件?
文件筛选:同时匹配含-str或-stn的文件
你之前用的*-str|stn*写法逻辑有误,正则里的|是分支匹配符,你的写法会被解析成匹配*-str结尾的内容,或者stn*开头的内容,而非包含-str或-stn的完整文件名。以下是几种可行的解决方法:
正则表达式写法
如果你的工具支持正则匹配,正确的表达式应该是:
.*-(str|stn).*
.*匹配任意长度的任意字符(包括空内容)-(str|stn)精准匹配-str或-stn这两个子串- 末尾的
.*匹配子串之后的任意内容
通配符写法(Shell/文件管理器)
如果用的是通配符而非正则,不用复杂语法就能实现:
- Shell(如Bash):
- 先开启扩展通配符支持:
shopt -s extglob - 用以下命令匹配:
ls *@(-str|-stn)*
ls *-str* *-stn* - 先开启扩展通配符支持:
- 图形界面文件管理器:
大部分管理器支持空格分隔多个通配符,直接输入:*-str* *-stn*即可同时筛选两类文件。
内容的提问来源于stack exchange,提问作者Mishal
相关产品推荐
相关产品推荐

