替换URL中的字符串(带括号和不带括号),

时间:2019-07-24 13:50:00

标签: javascript

我正在尝试将CMS文章中的某些单词替换为链接。

这是一个我想通过文章ID将某些单词链接到不同文章的网站。

到目前为止,这是我的代码:

let replace = ' (' + word + ') ';
html = html.replace(new RegExp(replace +'(?!(.(?!<a))*</a>)(?!(.(?!<img))*</img>)','i'), ' <span id="' + element.id+ '">' + replace + '</span> ');

现在我在“示例”或“快乐”或“代码”等词上获得了链接,但我也希望它适用于(示例)或(快乐)或(代码)

我试图做第二次这样的替换:

let replace2 = ' \(' + word + '\) ';
html = html.replace(new RegExp(replace2 +'(?!(.(?!<a))*</a>)(?!(.(?!<img))*</img>)','i'), ' <span id="' + element.id+ '">' + replace2 + '</span> ');

但是它不能像这样...

有什么想法吗? -也许我应该使用完全不同的正则表达式,但到目前为止,已经有很多替换了Image和normal链接中的单词。这个有效,但我不是专家...

0 个答案:

没有答案