Regex 或 Bash 中是否存在某种元字符作为常见分隔符的通配符?

Regex 或 Bash 中是否存在某种元字符作为常见分隔符的通配符?

- _|/\()[]{}我的意思是像或/和其他我必须忘记的角色。

例如,一个用例是,假设该字符是 ¤ :

apt-search ¤obs¤

启用结果过滤,例如obsolete observation,等等...

或者更一般地说X | egrep ¤

我想我没有很好的术语,但我无法在网上找到结果。

答案1

在正则表达式中,它就是[] _|/\()[{}-]之间的全部[]。但请注意,它]必须是第一个(以阻止将其解释为收盘价),并且-必须是第一个或最后一个(以阻止将其解释为范围)。

答案2

在这里,您可以使用单词边界运算符:\bfromperl\<, \>fromvi均受apt和支持aptitude

它匹配单词字符和非单词字符之间的转换,在这种情况下,单词字符是字母数字字符或下划线。这对你来说不起作用,因为你想将其视为_分隔符,但请注意,Debian 软件包的名称中没有_,因此,如果它是你想要匹配的软件包名称,那么这应该不是问题。

仅搜索包名称:

$ aptitude search '~n \bobs\b'
p   obs-api                         - Open Build Service (api)
p   obs-build                       - scripts for building RPM/debian packages f
p   obs-plugins                     - recorder and streamer for live video conte
p   obs-plugins:i386                - recorder and streamer for live video conte
p   obs-plugins-dbgsym              - debug symbols for obs-plugins
p   obs-plugins-dbgsym:i386         - debug symbols for obs-plugins
p   obs-productconverter            - Open Build Service (product definition uti
p   obs-server                      - Open Build Service (server component)
p   obs-studio                      - recorder and streamer for live video conte
p   obs-studio:i386                 - recorder and streamer for live video conte
p   obs-studio-dbgsym               - debug symbols for obs-studio
p   obs-studio-dbgsym:i386          - debug symbols for obs-studio
p   obs-utils                       - Open Build Service (utilities)
v   obs-webui                       -
p   obs-worker                      - Open Build Service (build host component)

因为\b是单词边界,所以它也匹配主题的开头,即使在这种情况下obs前面没有分隔符。

相关内容