求个简单的PHP正则匹配。 ul classmain_conlispan classkinda hrefhttp://book.zongheng.co
求个简单的PHP正则匹配。
<ul class="main_con">
<li>
<span class="kind"><a href="http://book.zongheng.com/store/c21/c1210/b9/u0/p1/v9/s9/t0/ALL.html" title="动漫同人" target="_blank">[动漫同人]</a></span>
<span class="chap">
<a href="http://book.zongheng.com/book/299149.html" class="fs14" title="宠物小精灵黑白2" target="_blank">宠物小精灵黑...</a>
<a href="http://book.zongheng.com/chapter/299149/5188596.html" title="正文 第二十二章 暗涌!" target="_blank">正文 第二十二...</a>
</span>
<span class="number">
2826/18/0
</span>
<span class="author"><a href="http://home.zongheng.com/show/userInfo/10996625.html" title="一鼎" target="_blank">一鼎</a></span>
<span class="time">13-08-29 14:55</span>
</li>
<li>
<span class="kind"><a href="http://book.zongheng.com/store/c31/c3106/b9/u0/p1/v9/s9/t0/ALL.html" title="青春校园" target="_blank">[青春校园]</a></span>
<span class="chap">
<a href="http://www.mmzh.com/book/280776.html" class="fs14" title="那年雪花在飘,谁在忧伤?" target="_blank">那年雪花在飘...</a>
<a href="http://book.zongheng.com/chapter/280776/5188594.html" title="正文 真诚璃茉与夜落雪的暗斗" target="_blank">正文 真诚璃茉...</a>
</span>
<span class="number">
202/5/0
</span>
<span class="author"><a href="http://home.zongheng.com/show/userInfo/9854181.html" title="蕾娜莎" target="_blank">蕾娜莎</a></span>
<span class="time">13-08-29 14:55</span>
</li>
以上代码中我只想要<a href="(.*)" class="fs14" title="(.*)" target="_blank">(.*)</a>和这个格式一样的URL。这正则怎么写。
以下是我写的,
$html=file_get_contents($setting['book_url']);
$k='/<ul class="main_con">';
$k.='(.*)<a href="http:\/\/book.zongheng.com\/book\/(.*)" class(.*)>(.*)<\/a>(.*)';
$k.='<\/ul>/isU';
preg_match_all($k,$html,$rs);
没有匹配到地址
[解决办法]preg_match_all('#<a href="(.*?)" class="fs14" title="(.*?)" target="_blank">(.*?)<\/a>#i',$html,$rs);
[解决办法]那直接写就是了
#<a href="(.*)" class="fs14" title="(.*)" target="_blank">(.*)</a>#
[解决办法]那是当然啦你的正则表达式是‘/<ul class="main_con">(.*)<a href="http:\/\/book.zongheng.com\/book\/(.*)" class(.*)>(.*)<\/a>(.*)<\/ul>/isU’
<ul class="main_con">之后的.*不匹配换行符,而html代码中<ul class="main_con">后面有若干空格还有换行符
要是你想获取class="main_con"的ul里面的<a> </a>的话建议你用jquery处理,它提供了多种选择器,类选择器,属性选择器...
[解决办法]test.php
<?php
$str=<<<html
<ul class="main_con">
<li>
<span class="kind"><a href="http://book.zongheng.com/store/c21/c1210/b9/u0/p1/v9/s9/t0/ALL.html" title="动漫同人" target="_blank">[动漫同人]</a></span>
<span class="chap">
<a href="http://book.zongheng.com/book/299149.html" class="fs14" title="宠物小精灵黑白2" target="_blank">宠物小精灵黑...</a>
<a href="http://book.zongheng.com/chapter/299149/5188596.html" title="正文 第二十二章 暗涌!" target="_blank">正文 第二十二...</a>
</span>
<span class="number">
2826/18/0
</span>
<span class="author"><a href="http://home.zongheng.com/show/userInfo/10996625.html" title="一鼎" target="_blank">一鼎</a></span>
<span class="time">13-08-29 14:55</span>
</li>
<li>
<span class="kind"><a href="http://book.zongheng.com/store/c31/c3106/b9/u0/p1/v9/s9/t0/ALL.html" title="青春校园" target="_blank">[青春校园]</a></span>
<span class="chap">
<a href="http://www.mmzh.com/book/280776.html" class="fs14" title="那年雪花在飘,谁在忧伤?" target="_blank">那年雪花在飘...</a>
<a href="http://book.zongheng.com/chapter/280776/5188594.html" title="正文 真诚璃茉与夜落雪的暗斗" target="_blank">正文 真诚璃茉...</a>
</span>
<span alt="求个容易的PHP正则匹配" />
[解决办法]
#<a href="(.*)" class="fs14" title="(.*)" target="_blank">(.*)</a>#