织梦城市门户网站模板,wordpress中文图片插件下载,响应式模板网站模板,网站数据建设涉及哪些内容OK#xff0c;先确定我们要解决的问题——从一段Html文本中找出特定id的标签的innerHTML。这里面最大的难点就是#xff0c;Html标签是支持嵌套的#xff0c;怎么能够找到指定标签相对应的闭合标签呢#xff1f;我们可以这样想#xff0c;先匹配最前面的起始标签#xff…OK先确定我们要解决的问题——从一段Html文本中找出特定id的标签的innerHTML。这里面最大的难点就是Html标签是支持嵌套的怎么能够找到指定标签相对应的闭合标签呢我们可以这样想先匹配最前面的起始标签假设是div吧(我之所以能够这样去思考是因为我了解过正则的特性我知道正则中的平衡组能够实现我刚才说的“堆栈”操作。所以如果我们要编写复杂正则表达式需要对正则的一些高级特性至少有所了解这样我们思考问题才有个方向。匹配任意闭合HTML标签的正则表达式[\w])[^]*?((?[^]*)|\k(?)|.*?)*\k如果只想匹配div标签可以使用下面的正则表达式div)[^]*?((?[^]*)|\k(?)|.*?)*\k是的你可以把div修改成任意你想要匹配的HTML标签如果想同时匹配多个HTML标签可以使用下面的正则表达式(div|span|h1))[^]*?((?[^]*)|\k(?)|.*?)*\k你还可以继续添加更多要匹配的标签如果想匹配包含ID的标签可以使用下面的正则表达式[\w])[^]*\s[iI][dD](?[]?)footer(?(Quote)\k)[^]*?(/|((?[^]*)|\k(?)|.*?)*\k)这个正则匹配任意id为footer的HTML标签div测试111(1)(2)222(3)33di333444(4)//div)[^]*?((?[^]*)|\k(?)|.*?)*\k匹配结果(1) 、(4)//div)[^]*?((?[^]*)|\k(?)|.*?|\s)*\k匹配结果(1) 、(2)、(4)//[^匹配结果(1) 、(4)//[^]*匹配结果(1) 、(3)、(4)//[^]*(包含)[^]*根据包还内容确定结果。注意正则前面变为]*可以匹配div里面的属性工具下载https://pan.baidu.com/s/1kVsaqwv