Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想使用 pcregrep 及其 --color 选项来突出显示遵循特定模式的文本:
例如,如果 file.txt 包含:
bob says hi chloe says hello
然后运行:
pcregrep --color '(?:says)(.*)' file.txt
印刷
鲍勃打招呼 克洛伊打招呼
但我想要的是:
有没有办法使用 pcregrep 并让它只突出显示遵循特定正则表达式的文本?
答案似乎是否定的,您不能只为匹配的一部分着色,即使它没有(?:..)像您的示例中那样捕获。
(?:..)
但是,如果您改为使用积极的后向断言,它锚定匹配但不是匹配的一部分,您可以实现您想要的:
pcregrep --color '(?<=says)(.*)' data
结果: