2011-07
7

抓头 – 嵌套div的正则提取

By xrspook @ 17:50:04 归类于: 烂日记

很傻很天真的以为用正则可以轻易提取出div里的层层嵌套div,结果囧得厉害。div的开头通常都带有class或id,唯一,且容易辨认,但div的结尾,清一色的“/div”,真会搞死人。网络上流传的提取div版本貌似都不太可行。在一坨里提取一堆只是第一步,第二部还得把提取到的内容xml数组化。

其实呢,我也有想过一开始就对所有内容xml数组化,不过,信不信由你,从最开始那层<>到我要提取的那些内容少说也有15层,而且如果那些网页设计者好心加一层或减一层,我又得慢慢摸到底哪里出问题了。所以,用xml数组化是个思路,但“解剖”源数据的工作量不少且维护困难。毕竟,这不是5层,这是15层+啊!怨念那些穿那么多层衣服的网页。

正则难提取嵌套div,xml太郁闷,咋办呢?

我还有一个很天真的办法,手动选取要提取部分的代码然后贴到程序里提取。这么一来就解决了难提取困难的问题,当然啦,都手动干了,还有什么难不难的,这个办法很低级,但一定可行。

怎么办呢,怎么办呢?!

应该是我想得还不够深入,再花点时间动动脑筋好好琢磨琢磨吧。

今天很坏地想到用正则提取,table输出,然后直接Excel粘贴保存,早上还在兴奋这个伟大思路,下午就发现正则把我卡死,生活真是个悲喜剧。

别囧,我有的是时间,一定可以的!

7 Comments

  1. NAOH

    我完全看不懂,而且我想见99的人和我一样完全看不懂,说些大众化的东西吧,我没文化啊

  2. sh

    只是方式的问题,最后你还是搞定了,厉害。

    其实看你们WWE 一样看天书一样,貌似你们想搞真人PK,要不我来当裁判吧。

    NAOH 裁判在此 ,还不快点来贿赂下。

  3. […] 先说说这个YARK – P25的整体思路,昨天已经说过,也就是“用正则提取,table输出,然后直接Excel粘贴保存”。昨天傍晚说到,我被正则难住了,但昨天晚上,我却突然惊醒地想出了正解。在WWE P25层层div的网页里成功提取出我需要的排名部分。用的是这条正则,针对的是我需要提取信息的开头和结尾部分做筛选。 1 preg_match_all('/< div class="row(.|n)*?<div class="clear">/', $data, $log); […]

Leave a comment

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Anti-spam image

COPYRIGHT @ 我的天 | Theme by xrspook | Power by WordPress | Valid XHTML 1.1 and CSS 3 Go to top