【问题标题】:Non-greedy matching with grep script使用 grep 脚本进行非贪婪匹配
【发布时间】:2015-01-03 08:50:53
【问题描述】:

我有一个字符串 AD/CF/ES/DD/ 我想用 grep 查找,但在那里 是像 AD/CF/ES/DD/FG/DD 之类的其他字符串,我也在匹配我不想要的。我只想匹配 4 个部分。我尝试过类似的方法,但它匹配所有级别。

grep -P '[A-Z][A-Z]/[A-Z][A-Z]/[A-Z][A-Z]/[A-Z][A-Z]?'

请提出建议。 谢谢,

【问题讨论】:

    标签: linux shell scripting grep


    【解决方案1】:

    你可以使用这个grep -P 命令:

    grep -P '\b([A-Z]{2}/){4}\W' file
    

    【讨论】:

      【解决方案2】:

      走简单的路:

      grep -F AD/CF/ES/DD/ | grep -vF AD/CF/ES/DD/FG/DD 
      

      【讨论】:

        猜你喜欢
        • 2011-03-02
        • 1970-01-01
        • 2021-07-02
        • 2017-10-16
        • 1970-01-01
        • 1970-01-01
        • 2017-05-07
        • 2015-02-11
        相关资源
        最近更新 更多