gpt4 book ai didi

regex - 捕获两个标记之间的文本

转载 作者:行者123 更新时间:2023-11-29 09:35:07 25 4
gpt4 key购买 nike

我正在尝试获取两个标记之间的文本。

例如,假设文本是:

arn:aws:dfasdfasdf/asdfa:start:CaptureThis/end

输出应该是:CaptureThis

这两个标记是::start:/end

我能得到的最接近的是使用这个正则表达式:

INPUT="arn:aws:dfasdfasdf/asdfa:start:CaptureThis/end"
VALUE=$(echo "${INPUT}" | sed -e 's/:start:\(.*\)\/end/\1/')

...但这会返回大部分字符串:arn:aws:dfasdfasdf/asdfa:start:CaptureThis/end

如何将所有其他文本移开?

最佳答案

您可以将 (GNU) grep 与 Perl 正则表达式(环视)和 -o 选项一起使用以仅返回匹配项:

$ grep -Po '(?<=:start:).*(?=/end)' <<< 'arn:aws:dfasdfasdf/asdfa:start:CaptureThis/end'
CaptureThis

关于regex - 捕获两个标记之间的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35519147/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com