Я пытаюсь выделить некоторые конкретные слова внутри строки.Невозможно правильно выделить слова внутри строки
Например:
$keyword='span';
$string='<span>Set color of the string inside span.</span>';
и используя следующую функцию:
$str = preg_replace("/($keyword)/i","<span style='color:orange;'>$0</span>",$string);
Теперь проблема в том, что выдвигает на первый план «пядь» ключевое слово оба диапазона тега и пролетом внутри строки, но Я хочу выделить «span» внутри строки только не самого тега span, но не знаю, как это сделать.
И я хочу сделать все это без использования strip_tags.
В вашем примере, не существует «цвет» в вашем файле 'style' атрибута, но в любом случае я получаю идею. С одним регулярным выражением это будет боль. Вам лучше было бы предварительно очистить '$ string', т. Е. Извлечь то, что находится между' ', заменить ли вы, а затем добавить '' и''. – rlanvin
Я отредактировал свой вопрос, пожалуйста, просмотрите его –
Похоже, что это возможно в следующем дубликате: http://stackoverflow.com/questions/4603780/preg-replace-only-outside-tags-were-not-talking-full-html- parsing-jus – Typoheads