正则表达式处理BT的html嵌套问题

在博问里面求教大神,把问题搞定。在此做个记录备份,也给碰到类似问题的园友提供解决思路。

  简化的业务场景就是,在页面html标签中的属性中嵌套了html标签,怎么用用正则表达式过滤闭合的html标签(<span>匹配</span>,),处理标签外的文字。如下图中的span嵌套span。

正则表达式处理BT的html嵌套问题

图1

具体的正则表达式:<(\w+)([^<]*?(<\1>[\s\S]*?</\1>)?[^<]*?)?((?<!\1)?>[\s\S]*?</\1>|/>)。

总结自己的问题:

1、正则表达式只是用到才看下,临时抱佛脚不是每次都能解决问题的。

2、过于依赖在线正则表达式测试工具,应该在其他工具里试下结果。调试的时候Matches方法返回数组中每项也可以查看下。如图2。

正则表达式处理BT的html嵌套问题

图2

最后附上自己在博问中结帖的链接。

https://q.cnblogs.com/q/91682/

上一篇:Ubuntu下搭建高匿HTTP代理(亲测可用)


下一篇:CentOS下安装JDK,Tomcat,Redis,Mysql,及项目发布