[英]Regex to escape HTML Tag
我想僅從html標記字符串名稱中提取。 我想獲得這個結果:
我可以使用什么類型的正則表達式?
<div class='singleNode'><i class='fa fa-cogs'></i><span>Farm 1<span class='badge badge-primary'></span><span></div>
<div class='singleNode'><i class='fa fa-cubes'></i><span>STAGING<span class='badge badge-primary'></span><span></div>
<div class='singleNode'><i class='fa fa-desktop'></i><span>STAGING_SYSTEM_10<span class='badge badge-primary'></span><span></div>
如果你必須使用正則表達式,這里是示例代碼:
var re = /<div[^>]*?>(?:<(\\S+)[^>]*?>[^<]*?<\\/\\1>)+<span[^]*?>([^<]*?)(?=<span )/g; var str = '<div class=\\'singleNode\\'><i class=\\'fa fa-cogs\\'></i><span>Farm 1<span class=\\'badge badge-primary\\'></span><span></div>\\n\\n <div class=\\'singleNode\\'><i class=\\'fa fa-cubes\\'></i><span>STAGING<span class=\\'badge badge-primary\\'></span><span></div>\\n\\n<div class=\\'singleNode\\'><i class=\\'fa fa-desktop\\'></i><span>STAGING_SYSTEM_10<span class=\\'badge badge-primary\\'></span><span></div>'; var m; while ((m = re.exec(str)) !== null) { if (m.index === re.lastIndex) { re.lastIndex++; } // View your result using the m-variable. // m[2] is the 2nd capture group, the text inside the DIV element alert(m[2]) }
如果您可以使用DOM解析它,請使用以下代碼:
var input = document.getElementsByTagName("div"); for ($i = 0; $i < input.length; $i++) { alert(input[$i].textContent); }
<body> <div class='singleNode'><i class='fa fa-cogs'></i><span>Farm 1<span class='badge badge-primary'></span><span></div> <div class='singleNode'><i class='fa fa-cubes'></i><span>STAGING<span class='badge badge-primary'></span><span></div> <div class='singleNode'><i class='fa fa-desktop'></i><span>STAGING_SYSTEM_10<span class='badge badge-primary'></span><span></div> </body>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.