Возможный дубликат:
Как заменить текстовые URL-адреса и исключить URL-адреса в тегах HTML?
Учитывая некоторую разметку HTML, я хочу добавить ссылки вокруг определенных слов в тексте. Но я не хочу влиять на атрибуты или невидимые слова. Я также не хочу, чтобы в итоге слова с двойными ссылками (например,
.<a href="#">I went to <a href="#">China</a></a>
Образец
<h2>We are speaking English</h2>
<p>When speaking to somebody you can use our handy <a href="/speaking-guide.html">
speaking guide</a>.</p>
Идеальный результат при "говорящем" соединении
<h2>We are <a>speaking</a> English</h2>
<p>When <a>speaking</a> to somebody you can use our handy <a href="/speaking-guide.html">
speaking guide</a>.</p>
Обратите внимание, что href существующей ссылки не был изменен, равно как и слово, говорящее в ранее существовавшей ссылке.
Каков правильный способ сделать это? Если не использовать регулярное выражение, то с чем?