gpt4 book ai didi

javascript - 如何使用正则表达式替换标签之间的文本

转载 作者:行者123 更新时间:2023-12-02 13:44:38 24 4
gpt4 key购买 nike

我想替换表示 div 标记的字符串中的一些文本,该标记可能包含也可能不包含样式和类属性。例如,

var s = "<div style='xxx' class='xxx'>replaceThisText<div>

如果只是标签,我相信我可以这样做:

str = str.replace(/<div>[\s\S]*?<\/div>/, '<div>' + newText+ '<\/div>');

但是我如何考虑这些属性呢?

最佳答案

使用您的字符串作为 HTML 内容生成一个临时元素,然后获取其中的 div 来更新内容,更新内容后获取临时元素的 HTML。

var s = "<div style='xxx' class='xxx'>replaceThisText<div>";

// create a temporary div element
var temp = document.createElement('div');

// set content as string
temp.innerHTML = s;

// get div within the temporary element
// and update the content within the div
temp.querySelector('div').innerHTML = 'newText';

// get back the current HTML content in the
// temporary div element
console.log(temp.innerHTML)

为什么不使用正则表达式?

RegEx match open tags except XHTML self-contained tags

Using regular expressions to parse HTML: why not?

关于javascript - 如何使用正则表达式替换标签之间的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41510061/

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