正则表达式匹配html标签,获取标签内容

html-css029

正则表达式匹配html标签,获取标签内容,第1张

假设我们要获取下面html标签中的内容:

第一段是获取 <p></p>标签内部的数据,第二个是获取 <p><span></span></p>标签中的数据,其中span标签中有style属性值。

使用过正则表达式的同学肯定知道,上面两种情况其实都是一种情况,我们要获取的是 尖括号括起来的一对标签 中间的数据,起始标签形如<x>,结束标签形如</x>,这里的x表示的html标签。

此外,我们还需要考虑起始标签中包含style的数据,另外特殊的 <br/>标签,对实际获取数据无意义,也需要过滤掉。

通过上面的分析,我们可以如下正则表达式:

在使用正则表达式处理之前,我们先对数据进行预处理,比如style和

标签:

针对多个标签嵌套的情况进行处理,比如 <p><span style="white-space: normal">王者荣耀</span></p>,在经过预处理和正则匹配的后结果是 <span>王者荣耀 ,需要手工移除掉前面的起始标签,对应的方法如下:

测试方法如下:

output:

这个,需要编写JavaScript脚本才能实现。

举个例子:

document.getElementById('content').innerHTML、

document.getElementById('content').innerText、

document.getElementById('content').textContent

这三种方法都可以获取到id为content的标签里面的文本内容

需要准备的材料分别有:电脑、浏览器、html编辑器。

1、首先,打开html编辑器,新建html文件,例如:index.html。

2、在index.html中的<script>标签,输入js代码:

var a = '通过id获取:' + $('#test').html()

var b = '通过标签名获取:' + $('div').html()

$('body').append('<br/>' + a)

$('body').append('<br/>' + b)

3、浏览器运行index.html页面,此时成功通过id和标签名称获取到了节点并打印了节点内容。