Cheizer
@Cheizer

Как на jquery в тексте найти ники соцсетей @name и обернуть их ссылкой?

Как в тексте на странице, найти все ники и обернуть их ссылкой? Они могут быть разные, такого типа: @nikname.

Например, есть текст:

<div class="text">Lorem Ipsum - это текст-"рыба", часто используемый в печати и вэб-дизайне @username_1 . Lorem Ipsum является стандартной "рыбой" для текстов на латинице с начала XVI века @username_2. В то время некий безымянный печатник создал большую коллекцию размеров и форм шрифтов, @username_3 используя Lorem Ipsum для распечатки образцов. </div>


А в результате получить такой вариант, ники обернуты ссылками с соответствующими адресами:

<div class="text">Lorem Ipsum - это текст-"рыба", часто используемый в печати и вэб-дизайне <a href="https://site.ru/username_1">@username_1</a> . Lorem Ipsum является стандартной "рыбой" для текстов на латинице с начала XVI века <a href="https://site.ru/username_2">@username_2</a>. В то время некий безымянный печатник создал большую коллекцию размеров и форм шрифтов, <a href="https://site.ru/username_3">@username_3</a> используя Lorem Ipsum для распечатки образцов. </div>
  • Вопрос задан
  • 90 просмотров
Решения вопроса 2
@megakor
PHP погроммист | Vue авантюрист | ru.sarvarov.dev
Через регулярные выражения.
Дам подсказку: /^@\w+/
Ответ написан
0xD34F
@0xD34F Куратор тега JavaScript
$('.text').html((i, html) => {
  const regex = /@(\w+)/g;
  const replacement = (m, g1) => `<a href="https:\/\/site.com/${g1}">${m}</a>`;

  return html.replace(regex, replacement);
});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы