if (preg_match('/['.$i_word.']*()*['.$p_word.']*/', $string, $match)){
echo "<br>";
echo "more positive comment";
У меня такая же ошибка. Здесь я привязываю, чтобы соответствовать двум переменным, соответствует ли моя строка строке или нет. Но получаю ошибку: Предупреждение: preg_match(): Компиляция не удалось: отсутствует терминатор] для класса символов со смещением 16preg_match(): Ошибка компиляции: отсутствует завершение] для класса символов
Что содержимое '$ i_word' и' $ p_word'? Вы уверены, что в них нет специальных символов регулярных выражений? Попробуйте 'var_dump ('/['.$ i_word.'] *() * ['. $ P_word.'] */');' Перед if и отредактируйте результаты в вашу очередь. – Terminus
Содержимое является строкой и не содержит специального регулярного выражения. –
, тогда я не могу представить, почему это произойдет. Просто для удовольствия, ссылка на полезную функцию: http://php.net/manual/en/function.preg-quote.php – Terminus