正则表达式可拆分url和文本以创建自定义html内容

时间:2019-07-04 15:05:45

标签: javascript regex

输入字符串:

Hello <http://test.com:8080/test/|test_url> end.

我需要它,

Hello <a src="http://test.com:8080/test/">test_url</a> end.

我尝试搜索url和文本拆分,但没有找到适当的解决方案。

请任何人帮助我。

谢谢!

1 个答案:

答案 0 :(得分:6)

我看到您使用|作为分隔符而没有转义URL。这可能会产生问题,因为URL也可以包含相同的字符。如果您确定网址中没有该字符,则可以使用以下正则表达式脚本:

const rexp = /<(.*?)\|(.*?)>/g
const input = "Hello <http://test.com:8080/test/|test_url> end."
const output = input.replace(rexp, '<a href="$1">$2</a>')
console.log(output)