Аналог модификатора g для map
rba
nginx-forum на forum.nginx.org
Ср Июл 27 07:37:33 UTC 2016
Есть ли возможность сделать c помощью map или еще каких-нибудь директив
преобразование типа
echo "a1=1&a2=2&a3=3" | sed 's/&/ AND /g'
при том что кол-во переменных неизвество
Я нашел тему 2014 где Maxim Dounin что it's not suppot
http://nginx.2469901.n2.nabble.com/Use-g-global-regex-modifier-in-map-td7590975.html
но вдруг за два года появилось изящное решение?
Вариант с perl модулем не устрайвает.
У меня конечно возникла мысль накопипастить что-то типа
map $args $filters_stady2 {
default "args";
"~*(?<tmp0>[a-zA-Z0-9_+-=,.]+)&(?<tmp1>[a-zA-Z0-9_+-=,.&]+)" "$tmp0
AND $tmp1";
}
map $filters_stady2 $filters_stady3 {
default "$filters_stady2";
"~*(?<tmp0>[a-zA-Z0-9_+-=,. ]+)&(?<tmp1>[a-zA-Z0-9_+-=,.&]+)" "$tmp0
AND $tmp1";
}
map $filters_stady3 $filters_stady4 {
default "$filters_stady3";
"~*(?<tmp0>[a-zA-Z0-9_+-=,. ]+)&(?<tmp1>[a-zA-Z0-9_+-=,.&]+)" "$tmp0
AND $tmp1";
}
...
до предполагаемого максимального кол-ва переменных
а потом использовать $filters_stadyПоследний, но
Может быть есть возможность написать это компактней?
Posted at Nginx Forum: https://forum.nginx.org/read.php?21,268536,268536#msg-268536
Подробная информация о списке рассылки nginx-ru