如何使用JavaScript从字符串中删除HTML标签?

2022-12-04 15:01:34 浏览数 (1)

我们可以使用以下示例从带有 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>

输出

0 人点赞