繁体   English   中英

RegEx将格式化的链接转换为html <a>标签</a>

[英]RegEx to convert formatted link into html <a> tag

由于在构建搜索数据库时缺乏前瞻性,我留下了以下格式的链接: (Google Homepage)[http://google.com]

我一直在尝试使用Javascript中的正则表达式来将上述格式转换为<a href="http://google.com">Google Homepage</a>格式的常规HTML链接。

我已经可以通过正则表达式来选择括号和括号,但是很难让正则表达式适当地用HTML替换括号和括号。 谢谢!

这将非常简单。 基本上,只需建立两个捕获组。 一个捕获组将在括号内包含文本,另一个捕获组将在方括号内包含URL。

\((.*?)\)\[(.*?)\]
   #1       #2

然后,您只需将每个捕获的部分粘贴到标签中,如下所示:

<a href="\2">\1</a>

这是一个演示

这对我有用

 var str1="(Google Homepage)[http://google.com]"; var pattern=/\\((.*)\\)\\[(.*)\\]/; var str2=str1.replace(pattern,"<a href=\\"$2\\">$1</a>"); console.log(str2); 

考虑到()[]定义了边界,您可以尝试

\(([^\)]+)\).*\[([^\]]+)\]

\\ 1为文字,\\ 2为链接

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM