RewriteRule ^posuda/bokali-pitevaya-posuda/(|.*?/)(gruppa-tovarov_chashki-i-krujki/.*) https://www.lora.ua/posuda/stolovaya-posuda/$1$2 [R=301,L]
^((25[0-5]|2[0-4]\d|[01]?\d\d?)(\.))(?1){2}(?2)$
(\.)
и совсем убрать (?1)
^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?2)$
^((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(?2)$
{3,20}
rewrite "^/([ex1|ex2]+)/type_([A-Za-z0-9\-\_]+)/([0-9]+)/type_([A-Za-z0-9\-\_]+)/p([0-9]{3,20})$" /event.php?example=$1&alias=$2&event=$3&info=$4&p=$5 last;
/d=?\s*\d+\.\d+\s*(?:см)?|(?<!h|h=\s)\d+\.\d+\s*(?:см)/iu
/d=?\s*\d[\d.]*(?:\s*см)?|(h=?\s*)?\d[\d.]*\s*см(?(1)(*SKIP)(*F))/iu
Задача выцепить из названия Высоту, Диаметр, Объём итд...
/([dvh]=?\s*)?\d[\d.]*\s*(см|м?л)?/iu
600 мл
h= 4.7 см
d=19.3 см
Шаблон
.*
означает любое количество любых символов.Так что шаблон
product_id\=([0-9]+).*
совпадает в обоих случаях и происходит зацикливание.Тут вместо
.*
нужно искать любой символ кроме цифр и пробела[^0-9\ ]
или[^\d\s]
.Можно не возиться с захватом в отдельные переменные %1 и %2, а сразу весь нужный текст сохранить в %1.