网页数据提取常用正则总结

当抓取某个网并分析网页数据时,经常会使用正则匹配网页源码中的相关数据(一般是链接),下面就说一下常用的几个正则。


1、\w\d式

\w:匹配字母或数字或下划线或汉字

\d:匹配数字

常见的网址或图片链接大部分都是这种格式,

比如:"http://www.jianshu.com/p/b9db8f395ea1",   就可以通过正则"http://www.jianshu.com/p/\w+"来匹配(其中'+'代表可以有多个字符);

还有比较复杂点的"http://news.mtime.com/2017/09/25/1573897.html",可以用"http://news.mtime.com/\d+/\d+/\d+/\d+.html"来匹配;

2、\S式

\S:匹配所有非空白字符

比如:"http://news.mtime.com/45515/asdasd-dsds-dsdsd.html"; 可以用"http://news.mtime.com/\d+/\S+.html"来匹配;

3、[xxxx]式

有时候我们本想只获取网页中的所有文章链接,比如"http://news.mtime.com/45515/asdasd-dsds-dsdsd"式的;

我们可以通过上文中的"\S+"可以解决,即"http://news.mtime.com/\d+/\S+";

那么问题来了,这个正则不仅会匹配网页中的文章链接,可能还会匹配我们不想要的链接,

比如像这种js链接"http://news.mtime.com/322323/asdasd/sdsds.js"也会匹配到。

所以我们需要将匹配范围缩小,即只匹配字母和横线,那么这个网址可以用"http://news.mtime.com/\d+/[\w-]+.html"解决。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,408评论 19 139
  • 忘了从哪收集的资料了,放这儿,以备不时之需。 只能输入数字:"^[0-9]*$"。 只能输入n位的数字:"^\d{...
    study_monkey阅读 5,232评论 0 7
  • 正则表达式到底是什么东西?字符是计算机软件处理文字时最基本的单位,可能是字母,数字,标点符号,空格,换行符,汉字等...
    狮子挽歌阅读 6,481评论 0 9
  • 每个人都有属于自己的一片森林, 也许我们从来不曾去过, 但它一直在那里总会在那里, 迷失的人迷失,相逢的人会再相逢...
    小熊姑娘啊阅读 1,228评论 0 3
  • 以下内容为温医一院信息化的具体做法,摘自温医一院官网【中国医院信息化30年】 “‘看病难’确切地说,也是‘看病烦’...
    静静生长阅读 3,369评论 0 1