Regex positional capture in map

B.R. reallfqq-nginx at yahoo.fr
Mon Nov 3 14:18:26 UTC 2014


Using named captures works (as demonstrated by
https://stackoverflow.com/questions/12459518/nginx-extract-a-value-from-a-variable-or-any-string),
though:
map $host $foo {
    "~*^www\.(?<domain>.*)$"    $domain; # Named capture wins
    default                    $foo;
}
---
*B. R.*

On Mon, Nov 3, 2014 at 3:03 PM, B.R. <reallfqq-nginx at yahoo.fr> wrote:

> map's documentation
> <http://nginx.org/en/docs/http/ngx_http_map_module.html#map> states:
> A regular expression can contain named and positional captures that can
> later be used in other directives along with the resulting variable.
>
> Trying to do the following failed validation:
> map $host $foo {
>     "~*^www\.(.*)$"    $1; # Positional capture fails
>     default                    $foo;
> }
>
> What am I doing wrong?
> ---
> *B. R.*
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20141103/045dbc00/attachment.html>


More information about the nginx mailing list