Regex positional capture in map
Maxim Dounin
mdounin at mdounin.ru
Tue Nov 4 00:22:46 UTC 2014
Hello!
On Mon, Nov 03, 2014 at 11:02:23PM +0100, B.R. wrote:
> On Mon, Nov 3, 2014 at 3:22 PM, Igor Sysoev <igor at sysoev.ru> wrote:
>
> > 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;
> > }
> >
> >
> > default $host;
> >
> > Yup, my bad: typo while writing the example map.
> It does not interfere much with the problem though. Any piece of advice? :o)
As you already found yourself, map{} doesn't allow to use
positional captures in resulting values. Use named captures
instead.
--
Maxim Dounin
http://nginx.org/
More information about the nginx
mailing list