У меня были проблемы с поиском решения загадки регулярного выражения, которое у меня есть.
Недавно я работал над проектом, в котором нам нужно было заменить список слов в данном тексте на список якорных тегов.
Например, если дана строка
This is a test string
Я могу заменить слово «тест» на
<a target="_blank" href="https://website.com/string-random“>test</a>.
Полученная строка должна выглядеть следующим образом
This is a <a target="_blank" href="https://website.com/string-random“>test</a> string
Замена слов производится в al oop
foreach ($documents as $document)
foreach ($links as $link)
replace keywords
Что в итоге происходит в некоторых сценариях ios - некоторые URL-адреса в тегах привязки содержат слова, которые потенциально может быть заменен
Например, если заменить этот список слов
[
{
'keyword': 'test',
'link': 'https://website.com/string-random'
},
{
'keyword': 'string',
'link': 'https://random.com/string'
}
]
После того, как все замены выполнены, приведенная выше примерная строка будет выглядеть так:
This is a <a target="_blank" href="https://website.com/<a target="_blank" href="https://random.com/string“>string</a>-random“>test</a> <a target="_blank" href="https://random.com/string“>string</a>
Вместо
This is a <a target="_blank" href="https://website.com/string-random“>test</a> <a target="_blank" href="https://random.com/string“>string</a>
В настоящее время я ищу регулярное выражение, которое не будет совпадать ни с одним словом, окруженным специальными символами, поскольку я думаю, что это решит мою проблему.
Также очень открыт для любых других идей о том, как решить эту проблему