gpt4 book ai didi

javascript - 查找字符并用 HTML 包装

转载 作者:搜寻专家 更新时间:2023-10-31 22:32:34 24 4
gpt4 key购买 nike

我正在尝试在文档中找到 //(斜杠)并用 span 将其包装起来。

我试过了

var slashes = "//";
/slashes+/

所以输出应该是:

Hello There! I Am <span class="slashes">//</span> An Alien

使用 jQuery .replace():contains 但什么也没有发生,我是新来的正则表达式来正确地做到这一点。我该怎么做?

编辑:我尝试了什么: Solution for this question没用:

function slashes($el) {

$el.contents().each(function () {
dlbSlash = "//";
if (this.nodeType == 3) { // Text only
$(this).replaceWith($(this).text()
.replace(/(dlbSlash)/gi, '<span class="slashes">$1</span>'));
} else { // Child element
slashes($(this));
}

});
}

slashes($("body"));

最佳答案

您需要转义正则表达式中的斜线。尝试

var mystring = "adjfadfafdas//dsagdsg//dsafda"
mystring.replace(/\/\//g,'<span class="slashes">\/\/</span>');

应该输出

"adjfadfafdas<span class="slashes">//</span>dsagdsg<span class="slashes">//</span>dsafda"

如果你想替换 h2 和 p 标签中的斜杠,你可以像这样遍历它们:

$('h2, p').each(function(i, elem) { 
$(elem).text(
$(elem).text().replace(/\/\//g,'<span class="slashes">\/\/</span>'));
});

不过,这会消除您在 p 和 h2 标签中可能拥有的任何其他 html 标签。

关于javascript - 查找字符并用 HTML 包装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12499959/

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