正则表达式—从HTML里提取内容

tags: #正则表达式 #HTML提取

记录收集我测试过的正则表达式,以便备查备用

  • 匹配任意字符不能跨行:.*

  • 匹配任意字符包括换行符等:[sS]*

  • 捕获某前缀与某后缀之间的任意字符:(.*?)
    使用情况举例,捕获下面HTML中的文字“不迟any
    HTML:<a href='http://www.cnblogs.com/buchiany/'>不迟any</a>
    匹配的正则表达式:<a.*?>(.*?)</a>
    成功测试适用于:Python 3.x

  • 匹配任意空白(包含空格、f换页符、 换行符、 回车符、 制表符、v垂直制表符):[s]*
    使用情况举例,匹配下面HTML内容里第一行<tr>和第三行<th>,之间跨越了空白

HTML:

要匹配的内容第一部分<tr> 

   <th>要匹配的内容第二部分

匹配的正则表达式:<tr>[s]*<th>
成功测试适用于:Python 3.x


相关:

强烈推荐正则表达式在线测试工具:regex101

[正文结束]


[参考]

  1. https://regex101.com/
  2. http://www.jb51.net/article/28997.htm
  3. http://www.oschina.net/question/12_9507

[更新记录]
2016-12-19, 初建笔记。添加了2条

原文地址:https://www.cnblogs.com/buchiany/p/6379124.html