好书,收藏了。 在 2011年1月17日 下午10:11,Hao Wu <[email protected]>写道:
> http://lwp.interglacial.com/ > > 2011/1/17 cnhack TNT <[email protected]> > > >> use Data::Dumper; >> >> $s = q/<button type="button" style = " >> border:none;background:url(button_bk.png); width:150px; height:49px; ">/; >> >> ($c) = $s =~ /<([^<>]+?=[^<>]+?)>/; >> >> $bth{$1} = $2 while $c =~ /\s([\w-]+)\s*=\s*"([^""]+?)"/g; >> >> print Dumper \%bth; >> >> >> 正则就是这么个解法,当然你可能需要根据你的具体要求做些调整。 >> 另外 cpan 上帮助解析 HTML 的模块很多阿: >> >> HTML::Parser >> HTML::TreeBuilder >> HTML::TreeBuilder::LibXML >> >> 等等... >> >> 2011/1/17 Qiang (James) <[email protected]> >> >> On 01/17/2011 12:59 PM, Kermit Mei wrote: >>> > 求助一个问题: >>> > 解析一些html文件,需要把每个元素的属性分别读取到一个hash中,并且把属性原 >>> > 来的引号去掉,例如: >>> > >>> ...... >>> > >>> > 我现在用的办法比较繁琐,用了多次正则表达式和s///g替换,而且使用了空格作 >>> > 为分隔属性的标志,在处理style时是存在错误的。 >>> > 不知道有没有什么技巧,可以比较优雅地解决这个问题? >>> > >>> >>> 你可以用 Web::Scraper 能更有效的分析 html. >>> >>> > >>> > Thanks >>> > -- >>> > B.R >>> > Kermit >>> > >>> >>> Qiang >>> >>> -- >>> 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。 >>> 要向此网上论坛发帖,请发送电子邮件至 [email protected]。 >>> 要取消订阅此网上论坛,请发送电子邮件至 >>> [email protected]<perlchina%[email protected]> >>> 。 >>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。 >>> >>> >> -- >> 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。 >> 要向此网上论坛发帖,请发送电子邮件至 [email protected]。 >> 要取消订阅此网上论坛,请发送电子邮件至 >> [email protected]<perlchina%[email protected]> >> 。 >> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。 >> > > -- > 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。 > 要向此网上论坛发帖,请发送电子邮件至 [email protected]。 > 要取消订阅此网上论坛,请发送电子邮件至 > [email protected]<perlchina%[email protected]> > 。 > 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。 > -- HY_CN -- 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。 要向此网上论坛发帖,请发送电子邮件至 [email protected]。 要取消订阅此网上论坛,请发送电子邮件至 [email protected]。 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
