我有一个这样的 txt 文件:
asdfasdf
ffaCover 91adf
ffffa
我想使用 grep 或某些 linux 工具来捕获“Cover”后空格后的 1 或 2 位数字。在某些编程语言中,我会使用正则表达式库来匹配/^Cover (\d\d?)$/。然后会有一些方法可以得到括号内的 1 或 2 位数字。有没有办法使用 grep 来做到这一点?
最佳答案
我一直都是这样做的:
grep -Po '(?<=Cover\s)(\d\d?)'
grep
的-o
选项使它只打印出模式的匹配部分,不包括零宽度回顾断言。
但是,我之前不知道 anubhava 的答案中的 \K
选项,这看起来更干净。
关于regex - 如何使用 grep 从文件中检索匹配的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33901920/