我使用 jq 获取 json 并获取一些值。
我有这个字符串
"arn:aws:ecs:eu-west-1:foo:task/blablabla"
我想从 task/中获取子字符串,然后只返回 blablabla
现在我有了这个正则表达式。
(.*task?)\/(.*$)
这给了我两组。
知道如何使用 jq 应用此正则表达式并获得第二组吗?
问候
最佳答案
在 jq 1.5 上,您可以将正则表达式传递给 match
,然后获取 captures
的第二个元素的 string
属性。
jq 'match("(.*task?)\/(.*$)").captures[1].string'
关于regex - 在 JQ 上应用正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37328327/