我使用的是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]