gpt4 book ai didi

javascript - 如何列出js中字符串中的所有html标签

转载 作者:行者123 更新时间:2023-12-04 01:34:11 25 4
gpt4 key购买 nike

我有一个字符串,其中包含文本和许多带有相应属性及其值的 html 标签,例如:-

我正在尝试取出所有标签名称并插入数组注意:- 我有两个名为 trim() 和 null() 的自定义函数,它们删除字符串的所有空格并检查提供的参数是否为空。

var a = `
<div class="box">
<span id="box-span">
<p class="texts">very long texts goes here.</p>
<p class="texts">very long texts goes here</p>
<p class="texts">very long texts goes here</p>
</span>
</div>`;
var tags = function(string) {
var array = ['hello'];
var string = a.trim('');
var len = string.length;

for (var i = 0; i < len; i++) {
index1 = string.indexOf('>');
index2 = string.indexOf('<');
index3 = string.indexOf('/');

if (null(index1) && index1 !== -1 && null(index2) && index2 !== -1) {
// if somthing is found
x = string.substr(index1, index2);
g = x.indexOf('/') // for end tag
if (null(g) || g !== -1) {
x = string.substr(index1, index2 - 1);
array.push(x);
} else {
array.push(x);
}

z = string.substr(index2); // new string with reducing 1 tag
if (z.length < len && z.length > 0) {
tags(z)
} else {
return array;
break;
}


}

}
}
console.log(tags(a));

这是我的想法,但行不通。

最佳答案

已更新;只获取唯一标签(无重复)。

类似的东西会让你走上从 HTML 中去除所有可用 标签 的道路......

 var a = `<div class="box">
<span id="box-span">
<p class="texts">very long texts goes here.</p>
<p class="texts">very long texts goes here</p>
<p class="texts">very long texts goes here</p>
</span>
</div>`;

var temp = document.createElement("div");
temp.innerHTML = a;

var all = temp.getElementsByTagName("*");
var tags = [];
for (var i = 0, max = all.length; i < max; i++) {
var tagname = all[i].tagName;
if (tags.indexOf(tagname) == -1) {
tags.push(tagname);
}

}

console.log(tags);

https://jsfiddle.net/9phzt1y2/2/

关于javascript - 如何列出js中字符串中的所有html标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47177413/

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