我想在一个用俄语写的html页面的字符串中构建一个PHP REGEX,用于搜索整个单词(在它之前不包含来自某些预定义列表的字母),以及用一个链接替换该单词,该链接大部分时间将在href属性中包含相同的单词。 如果它已经在tag中,它也不应该替换它。
例如:
要搜索和更改的词:создать
信件清单[Я,т,со]
Html字符串:
<div class="wiki-p">
Яндекс и Сбербанк подписали соглашение о намерениях создать совместное предприятие на базе Яндсоздатьекс Ясоздать.
Маркета. Объединив инфраструктуру и технологии создать
Объединив инфраструктуру и <a href="#">технологии создать </a>
</div>
输出应为:
<div class="wiki-p">
Яндекс и Сбербанк подписали соглашение о намерениях <a href="example.com/category/создать">создать</a> совместное предприятие на базе *Яндсоздатьекс*.
Маркета. Объединив инфраструктуру и технологии <a href="example.com/category/создать">создать</a>
Объединив инфраструктуру и <a href="#">технологии создать </a>
</div>
单词Яндсоздатьекс,其中包含单词保持不变, 还有Ясоздать,在单词
之前包含字母Я我使用了以下正则表达式:
$regex = '~<[^>]*>(*SKIP)(*F)|\b'. $needle . '\b~';
它有3个问题:
1)它仅适用于英语,而不适用于其他语言
我尝试使用“/ u”,但没有成功。
2)它允许在标签内替换搜索到的字符串:
Before:
<a href="#"> testes создать </a>
After:
<a href="#"> testes <a href="#">создать </a></a>
3)如何检查信件中是否没有来自清单的信件?
除此之外,我读到在使用html数据时,最好使用DOMDocument对象解析器 - 为什么呢?