169 похожих чатов

А есть тут люди по регуляркам? есть такой вот кейс: имеется

строка вида
dsgsd s&nbsp; &nbsp; &nbsp; <a href="http://dfgdfg">ssssssssssssssss</a> sssssssssssssssssssssg sdg <a href="http://dfhdfddddddddd">sdgsdg</a>sg
Необходимо проверять, существует ли в этой строке тег <a>
И если он существует то надо изменить его добавив -
<a target="_blank" rel="nofollow" href=...
И так для каждого <a>
При этом если у ссылки уже есть есть
target="_blank" rel="nofollow"
то ее трогать не надою
И при этом нужно знать какой домен в href, ибо если домен допистим google - то надо вставлять только
<a target="_blank" href=...
Я раньше делал просто проверяя - есть ли в строке
<a href=
- и если есть заменял его на нужное мне.
Но теперь в строке может быть не один
<a href=
.
Я пришел к matchAll() - но это дает ограничение на правку статьи, ибо зная все вхождения и если я заменю исходную строку, то индексы всех других вхождений - будут уже не акутальны.

1 ответов

7 просмотров

лучше распарси эту строку в дом, а дальше с ним работай

Похожие вопросы

Обсуждают сегодня

А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
Где в Астане можно купить мясо для шашлыков?
Dancing Іңұқәһүғө
21
Добрый день подскажите пожалуйста может кто то сталкивался с ошибками Sentry 22.10.0 развернутым из helm чарт в Kubernetes? Изначально 3 дня назад очень стало много событий ух...
Tire4 Finist Devops
1
;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, стандартный ;вызов процедуры ;option casemap:no...
Егор Анелькин
1
почому оно не работает?
Vi Chapmann Chapmann
19
всем привет почти закончил курс После него можно писать свою операционку? Какие библиотеки надо использовать и куда дальше копать для изучения
Linus
19
Так а кто может спарсить всех участников чата? Идишники
Magic
18
Карта сайта