У меня сложное регулярное выражение перезаписи, использующее 8 обратных ссылок.Он прост по своей концепции, он удаляет все вхождения символа '-'.
Я переписываю старые URL-адреса, чтобы удалить символы '-', разделяющие поля даты.Пример:
from /prefix_text!2010-03-15-10-30!suffix_text
to /prefix_text!201003151030!suffix_text
URL-адрес гарантированно будет иметь «-» только в пределах сегмента даты.Правило перезаписи:
RewriteRule ^(.*)(!|%21)([0-9]{4})-([0-9]{2})-([0-9]{2})-([0-9]{2})-([0-9]{2})(.*)$ $1$2$3$4$5$6$7$8 [R=301,L]
Правило: prefix_text,!или% 21, 4 цифры, 2 цифры, 2 цифры, 2 цифры, 2 цифры, суффикс_текст.
Учитывая, насколько сложное регулярное выражение, мне интересно, насколько эффективен механизм регулярных выражений mod_rewrite?Я лучше удаляю только один '-' символ за раз, а затем повторно запускаю правила с помощью [N]?Или 8 обратных ссылок хорошо?
Спасибо.