将BBCode链接转换为HTML链接的正则表达式



我使用的是TinyMCE 4.4,其中,内容源是HTML和BBCode。用户可以在BBCode视图中插入链接并转换为HTML。

例如BBCode link: [url href=http://test.com]test[/url],我需要regex将转换为相应的HTML链接。

在TinyMCE BBCode插件的下面行,但它似乎不工作。

rep(/[url=([^]]+)](.*?)[/url]/gi, "<a href="$1">$2</a>");
rep(/[url](.*?)[/url]/gi, "<a href="$1">$1</a>");

理想情况下,Regex应该转换以上BBCode链接到<a href="http://test.com">test</a>,但它应该处理复杂的URL(查询字符串参数),以及

有什么想法吗?

问题是你的BBCode是错误的。不需要href=,只需要url=

[url=http://test.com]test[/url]

那么正则表达式应该正确地完成它们的工作。

正则表达式:/[url=([^]]+)](.*?)[/url]/gi, "<a href="$1">$2</a>"适用于[url=http://test.com]some plain text[/url]

正则表达式/[url](.*?)[/url]/gi, "<a href="$1">$1</a>"用于[url]http://test.com[/url]

最新更新