使用Javascript将带有HTML标记的字符串分开
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Javascript将带有HTML标记的字符串分开相关的知识,希望对你有一定的参考价值。
var str = '<h1>Header</h1><p>Paragraph</p>
我有一个字符串str
我想分开h1
和p
文本。
结果:
var h = 'Header'
var p = 'Paragraph'
有没有快捷方式?我用for循环试了一下。
答案
在这里,没有字符串操作:
const str = '<h1>Header</h1><p>Paragraph</p>'
const div = document.createElement('div');
div.innerhtml = str;
const [h, p] = [...div.children].map(el=>el.textContent);
console.log(h, p);
另一答案
使用jQuery:
var str = '<h1>Header</h1><p>Paragraph</p>'
var h = $.parseHTML( str )[0].innerText
var p = $.parseHTML( str )[1].innerText
另一答案
试试正则表达式:
var str = '<h1>Header</h1><p>Paragraph</p>';
var result = str.match(/<([w]+)[^>]*>(.*?)</([w]+)[^>]*>/g).map(function(val){
var pre = val.split('>')[1];
return pre.substr(0, pre.lastIndexOf('<'));
});
console.log(JSON.stringify(result));
以上是关于使用Javascript将带有HTML标记的字符串分开的主要内容,如果未能解决你的问题,请参考以下文章
带有Javascript onclick事件的HTML锚标记
HTML 带有img标记和JavaScript的SVG图像,用于不支持的浏览器。
仅使用 Javascript 从 HTML 字符串中提取元标记