我们可以使用以下示例从带有 JavaScript 的字符串中删除 HTML 标签 -
- 使用正则表达式去除 HTML 标记
- 使用 InnerText 去除 HTML 标记
使用正则表达式去除 HTML 标记
正则表达式将标识 HTML 标签,然后使用 replace() 将标签替换为空字符串。假设我们有以下 HTML -
代码语言:javascript复制<html><head></head><body><p>The tags stripped...<p</body></html>
我们想用正则表达式删除上面的标签。为此,我们将创建一个自定义函数 -
代码语言:javascript复制function removeTags(myStr)
myStr 将包含我们要删除其标签的 HTML 代码 -
代码语言:javascript复制function removeTags(myStr) { if ((myStr===null) || (myStr==='')) return false; else myStr = myStr.toString(); return myStr.replace( /(<([^>] )>)/ig, ''); }
对上述函数删除标签的调用是这样的 -
代码语言:javascript复制document.write(removeTags('<html><head></head><body><p>The tags stripped...<p</body></html>'));;
例
现在让我们看看完整的示例 -
代码语言:javascript复制<!DOCTYPE html> <html> <title>Strip HTML Tags</title> <head> <script> function removeTags(myStr) { if ((myStr===null) || (myStr==='')) return false; else myStr = myStr.toString(); return myStr.replace( /(<([^>] )>)/ig, ''); } document.write(removeTags( '<html><head></head><body><p>The tags stripped...<p</body></html>'));; </script> </head> <body> </body> </html>
输出
使用 InnerText 去除 HTML 标记
例
在这个例子中,我们将使用 innerText 去除 HTML 标签 -
代码语言:javascript复制<!DOCTYPE html> <html> <title>Strip HTML Tags</title> <head> <script> var html = "<html><head></head><body><p>The tags stripped...<p</body></html>"; var div = document.createElement("div"); div.innerHTML = html; var text = div.textContent || div.innerText || ""; document.write(text) </script> </head> <body> </body> </html>