gpt4 book ai didi

javascript - 使用正则表达式查找字符串中的所有子字符串javascript

转载 作者:行者123 更新时间:2023-12-03 08:00:46 24 4
gpt4 key购买 nike

我有一个富文本编辑器,它生成的输出也包含超链接。例如<p><a href="test.com" target="_blank">Link1</a>&nbsp;fsdfsdf <a href="google.com" target="_blank">Link2</a>&nbsp;fsdffsdfs</p>
我需要获取所有 <a>标签和 href s 在其中,以便我可以运行验证,例如,如果它是外部链接,以便我可以添加 nofollow标签等。我应该使用什么样的正则表达式?或者除了正则表达式之外还有什么?

谢谢。

最佳答案

need to get all the tags and hrefs in them

Or anything other than regex maybe?

尝试创建一个元素将编辑器文本设置为 .innerHTML ,使用 .map() 返回 a 元素的数组 href 属性值

// editor text
var html = document.querySelector("#editor").textContent,
// element to store `html` from editor
div = document.createElement("div"),
// set `div` `.innerHTML` to editor text
div.innerHTML = html;
// `links` : all `a` elements ; `list` : `links` `href` values
var links = [].slice.call(div.querySelectorAll("a")),
list = links.map(function(el) {
return el.href
});
// filter `list`, set `rel="nofollow"` attribute at `a` element
// within `links` where condition at `if` returns `true`
for (var i = 0; i < list.length; i++) {
if (/* condition ; for example if it's an external link */) {
links[i].setAttribute("rel", "nofollow")
}
}

关于javascript - 使用正则表达式查找字符串中的所有子字符串javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34586797/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com