使用 javascript 替换开始和结束的多个 html 标签
Replace starting and ending multiple html tags using javascript
我想删除以下标签
1. <div>
2. </div>
3. <p>
4. </p>
5. <span>
6. </span>
var str = '<div><p><span>Hello World</span></p></div>';
我能做到
str = str.replace('<div>', '');
str = str.replace('<p>', '');
等等。
但是使用正则表达式等我们可以一步完成。
不要为此使用正则表达式:RegEx match open tags except XHTML self-contained tags
解析 HTML 并检索您需要的内容。这是一个基本的,它从您提供的节点中检索文本。您可以进一步扩展它以满足您的需求。
var container = document.createElement("div"); //load div in memory
container.insertAdjacentHTML("afterbegin", str); //append the nodes into the container div.
str = container.getElementsByTagName("span")[0].textContent || container.getElementsByTagName;("span")[0].innerText;
你甚至可以做到container.textContent || container.innerText
;从字符串容器 HTML 元素中获取所有文本但没有节点。 (innerText 支持旧版浏览器,IE)。
试试这个模式:
/<\/?([a-z])+\>/g
RegExr v2.0 是一个非常方便的测试正则表达式的工具。要查看结果,请单击页面底部的 "substitution" 选项卡。
希望这就是您要找的。
我想删除以下标签
1. <div>
2. </div>
3. <p>
4. </p>
5. <span>
6. </span>
var str = '<div><p><span>Hello World</span></p></div>';
我能做到
str = str.replace('<div>', '');
str = str.replace('<p>', '');
等等。
但是使用正则表达式等我们可以一步完成。
不要为此使用正则表达式:RegEx match open tags except XHTML self-contained tags
解析 HTML 并检索您需要的内容。这是一个基本的,它从您提供的节点中检索文本。您可以进一步扩展它以满足您的需求。
var container = document.createElement("div"); //load div in memory
container.insertAdjacentHTML("afterbegin", str); //append the nodes into the container div.
str = container.getElementsByTagName("span")[0].textContent || container.getElementsByTagName;("span")[0].innerText;
你甚至可以做到container.textContent || container.innerText
;从字符串容器 HTML 元素中获取所有文本但没有节点。 (innerText 支持旧版浏览器,IE)。
试试这个模式:
/<\/?([a-z])+\>/g
RegExr v2.0 是一个非常方便的测试正则表达式的工具。要查看结果,请单击页面底部的 "substitution" 选项卡。
希望这就是您要找的。