Javascript从字符串中的符号创建链接

时间:2017-12-28 14:52:01

标签: javascript string replace

这是我的字符串

var text = "Lorem ipsum dolor *https://www.google.com/* amet, *https://www.google.com/*";

我想创建一个像这样的新

var newText = "Lorem ipsum dolor <a href="https://www.google.com/">https://www.google.com/</a> amet, <a href="https://www.google.com/">https://www.google.com/</a>";

我的脚本不起作用。我做错了什么?

var newText = text.replace("*", "<a href=></a>");

2 个答案:

答案 0 :(得分:1)

您正在使用<a href=></a>

替换星号的第一个出现位置

&#13;
&#13;
var text = "Lorem ipsum dolor *https://www.google.com/* amet, *https://www.google.com/*";
var newText = text.replace("*", "<a href=></a>");
console.log(newText);
&#13;
&#13;
&#13;

要全部替换它们,您可以使用捕获组(位于$1中),然后使用replace

\*(.*?)\*

<强>解释

  • 匹配星号\*
  • 捕获任何非贪婪字符(.*?)
  • 的捕获组
  • 匹配星号\*

&#13;
&#13;
var text = "Lorem ipsum dolor *https://www.google.com/* amet, *https://www.google.com/*";
var newText = text.replace(/\*(.*?)\*/g, "<a href=\"$1\">$1</a>");
console.log(newText)
&#13;
&#13;
&#13;

答案 1 :(得分:1)

您可以尝试以下代码:

<div> H e l l o </div>