Nukedx
Код: #В ролях: .*<br />(.+)#
Код: #В ролях: .*<br />(.+)#
подскажите плиз. заменяю при выводе страницы втречающиеся в глоссарии термины на
<a href="url">термин</a> , но если в тексте встречаются ссылки и названии ссылки встречается термин, как например тут:
<a href="url">текст термин текст</a>
то preg_replace заменяет термин в названии ссылки тоже и весь код страницы портиться. как ограничить preg_replace чтобы он не трогал термины внутри названий уже существующих ссылок.
текущий код замены:
$glossary['str'] = "(\b|\B)".$glossary['str']."(\b)";
$row['full_story'] = preg_replace("'".$glossary['str']."'i", "<a href=\"".$glossary_link."\">".$glossary['str']."</a>", $row['full_story']);
пробую так:
$glossary['str'] = "(^2|\b|\B)".$glossary['str']."(^2|\b)(?!<\/a)";
выходит но только если термин стоит прямо перед </a> , показать что там могут быть ещё слова не получается
есть такой код как изменить чтобы получить то что хочу
Страницы: 12345678910111213141516171819202122232425262728293031323334
Предыдущая тема: Xitami Web Server + PHP+ zend optimizer