使用正则表达式剥离HTML tagName

时间:2014-10-08 15:39:03

标签: javascript jquery html css regex

我正在尝试将HTML-tagName与HTML-Code分开。我的HTML代码如下:

<div id="MyDiv" style="left:100px; top:10px;" > some text in div
<strong>
<em> Some text for em
<p><b>b,  <span id="MySpan">span1,

在调用REg-Ex后,我希望所有有效的HTML-Tagname都来自字符串。 例如。从上面的HTML-Code,它应该产生如下结果:div,strong,em,p,b,span。 这是我的方法:

sTagName = sTagName.replace(/< *(.*) *>/, '$1');
alert(sTagName);

以上RegEx-Statement为< div >结果提供:div这没关系。 但它提供了< div stlye="..." >个结果:div stlye="..."这是错误的。 我希望它只有一个div。 换句话说,在HTML-Tagname中的空格之后,应删除该字符串,以便我得到div-Tagname。 出于性能原因,我不会两次调用RegEx-Statement。 提前谢谢。

1 个答案:

答案 0 :(得分:1)

通过dom;

var el = $("<div/>").append(html_string).find("*").each(function() {
    alert($(this).prop("tagName"));
});