获取字符串中的#prefixed 单词并将其替换为可点击的链接

Get #prefixed words in a string and replace them to clickable links

我有一些带有#prefixed 单词的字符串

例如:

评论1:我是一个#聪明的人。

评论 2:我喜欢#code 新事物。

评论 3:我有一个#new 概念。

我希望它在此字符串中找到#items,这是我在下面的部分中所做的。

var result       = $.grep(comment.split(' '), function(item) {
    var hashWords = /^#/.test(item);
    return hashWords;
});

我会用上面的代码从上面的评论中得到每个#words

#聪明

#代码

#新

但我希望它替换为可点击的链接

评论1:我是#smart人。

评论 2:我喜欢 #code 新事物。

评论3:我有一个#new概念。

请帮我找出解决方案,因为我是 jquery 的新手。

考虑以下因素。

$(function() {
  function replacePrefix(target) {
    var regex = /\#(\w+)/gmi;
    var subst = `<a href='https://www.google.com?hashtag='>#</a>`;
    var myText;
    $(target).each(function(i, el) {
      myText = $(el).html();
      $(el).html(myText.replace(regex, subst));
    });
  }

  replacePrefix(".comment");
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div>
  <div class="comment">I am a #smart person.</div>
  <div class="comment">I love to #code new things.</div>
  <div class="comment">I have a #new concept.</div>
</div>

传入一个选择器或一个元素,它将遍历每一个,寻找前缀,例如 #new,并将它们替换为 HTML:

<a href='https://www.google.com?hashtag=new'>#new</a>