Javascript替换文本不';不呈现HTML

Javascript替换文本不';不呈现HTML,javascript,regex,Javascript,Regex,与 [[foo]]条 我跑 replace(/\[\[(.*)\]\]/,函数(t){return”“}); 页面文本只是变成了文字 replace(/\[\[(.*)\]\]/, function(t){return "<a href='"+t+"'>"+t+"</a>"}); 条 而不是创建一个工作超链接 因此,问题是,如何使用replace方法而不是看到文本来获取工作html?请不要建议我只使用linkify库——这只是一个例子。我不知道为什么NNNN没有把

[[foo]]条
我跑

replace(/\[\[(.*)\]\]/,函数(t){return”“});
页面文本只是变成了文字

replace(/\[\[(.*)\]\]/, function(t){return "<a href='"+t+"'>"+t+"</a>"});
而不是创建一个工作超链接


因此,问题是,如何使用
replace
方法而不是看到文本来获取工作html?请不要建议我只使用linkify库——这只是一个例子。

我不知道为什么NNNN没有把他的评论作为答案,因为它是正确的。
replace
中的函数接受匹配的子字符串作为第一个参数,并且每个其他参数都是“第n个括号内的子匹配字符串”,如中所述

代码如下:

<a href='[[foo]]'>[[foo]]</a> bar
“[[foo]]bar”。替换(/\[\[(.*)\]\]/,函数(m,t){return'})
“酒吧”

您如何设置内容?您可能将其设置为文本而不是HTML。请注意,如果希望
.replace()
返回
“bar”
(无方括号),则需要在回调函数中使用第二个参数,因为第一个参数是整个匹配项。所以:
replace(/\[\[(.*)\]\]/,函数(m,t){return”“})。(请参见
t
现在是第二个参数?)
<a href='[[foo]]'>[[foo]]</a> bar
"<div>[[foo]] bar</div>".replace(/\[\[(.*)\]\]/, function(m, t){return "<a href='"+t+"'>"+t+"</a>"})
"<div><a href='foo'>foo</a> bar</div>"