小编And*_*rew的帖子

为什么 ag 打印该文件中的空行?

我想使用ag在 python 文件中打印类及其方法。我认为这很容易使用:

ag --context=0 --nocolor -os '^\s*(def|class)\s+[_A-Za-z]*' prog.py
Run Code Online (Sandbox Code Playgroud)

但由于我不明白的原因,这也匹配空行。例如,如果您将 prog.py 设为以下内容

class MyFavouriteClass
    def __init__

    def __contains__
        blah    
class MyNextFavouriteClass
    def _repr_

    def __iter__
Run Code Online (Sandbox Code Playgroud)

然后它返回完整的文件,包括空行,包含blah. 当然,我总是可以将输出通过管道传输到其他内容中以删除空行,但我宁愿第一次就把它做好。

我怀疑这个问题与正则表达式无关,相反,它是ags--context和flags--after的一个功能--before,但我找不到这些功能的组合来满足我的要求。

有任何想法吗?

search regular-expression ag

1
推荐指数
1
解决办法
450
查看次数

标签 统计

ag ×1

regular-expression ×1

search ×1