gpt4 book ai didi

regex - 如何在 grep 的输出前加上标签?

转载 作者:太空狗 更新时间:2023-10-29 11:33:51 25 4
gpt4 key购买 nike

假设我有以下文本:

name is test1 and age is test2 end
name is test3 and age is test4 end
name is test5 and age is test6 end
name is test7 and age is test8 end

我正在 grepping 测试 1、测试 2、...,如下所示:

-bash$ grep -o -P "is .*? and|is .*? end" test
is test1 and
is test2 end
is test3 and
is test4 end
is test5 and
is test6 end
is test7 and
is test8 end

有没有办法在匹配的模式前添加一些文本?我正在寻找这样的输出:

STRING1:is test1 and
STRING2:is test2 end
STRING1:is test3 and
STRING2:is test4 end
STRING1:is test5 and
STRING2:is test6 end
STRING1:is test7 and
STRING2:is test8 end

最佳答案

我将 grep 的输出通过管道传输到 awk 以满足您的需要:

grep -o -P "is .*? and|is .*? end" test | \
awk -v a=STRING1: -v b=STRING2: "/and$/ {print a\$0} /end$/ {print b\$0}"

关于regex - 如何在 grep 的输出前加上标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10468988/

25 4 0