在Varnish正则表达式中提取捕获组内容

时间:2017-05-25 11:17:07

标签: regex varnish varnish-vcl

我在Varnish配置语言中有以下正则表达式

^/abc/([a-zA-Z0-9\-\ ]*)-([0-9]+)

现在,我想在Varnish中获取正则表达式的值$2部分(即[0-9]+)。

如何获得此值?

1 个答案:

答案 0 :(得分:0)

在这种情况下,您可以使用regsub

set req.url = regsub(req.url, "^/abc/([a-zA-Z0-9 -]*)-([0-9]+).*", "\2");

您匹配整个字符串,捕获您需要的部分,并替换为适当的反向引用。