Я работаю с PHP-скриптом, который находит
var $_plgCode = "#{comment(.*?) contentid=(.*?) option=(.*?) contenttitle=(.*?)}#i";
, а затем использует его в:
preg_match_all($this->_plgCode, $_body, $matches);
и
$_body = preg_replace($this->_plgCode, $output, $_body);
Проблема заключается вэтот contenttitle может содержать пользовательский ввод и вообще не защищен - так много вещей его сломают, например, если пользователь введет}.
Какой тип экранирования пользовательского ввода должен быть выполненна содержание, чтобы убедиться, что он не нарушает REGEX?