跪求正则表达式!!!
求正则表达式提取第一个url(直接取出最后那个id最佳),超链接的内容,提问日期那个时间,后面那个超链接内容,以及回答数那个数字,这个要preg_match_all循环匹配的,各位大牛帮帮小弟啊!
- 我擦我擦我擦擦擦。
我擦我擦我擦擦擦 - 提问日期:2012/05/12 18:06:58 – kagakugizyutugakari我擦 – 回答数:0 – 悬赏:50
我擦 > 我擦 > 我擦
——解决方案——————–
结果出来了,就是回朔多了点~凑合用吧
- PHP code
<?php $str=<<<HTML
- 我擦我擦我擦擦擦。我擦我擦我擦擦擦
- 提问日期:2012/05/12 18:06:58 - kagakugizyutugakari我擦 - 回答数:0 - 悬赏:50
我擦 > 我擦 > 我擦
HTML;$pattern='/question_detail\/([^"]+)"> #第一个id(.+?)<\/a> #第一个链接内容.+?提问日期:([^-]+).+? #提问时间]+)<\/a> #第二个链接内容.+?回答数:(\d+) #回答数/xis';preg_match_all($pattern,$str,$matches);print_r($matches);/* Array( [0] => Array ( [0] => question_detail/q1187216696">我擦我擦我擦擦擦。我擦我擦我擦擦擦提问日期:2012/05/12 18:06:58 - kagakugizyutugakari我擦 - 回答数:0 ) [1] => Array ( [0] => q1187216696 ) [2] => Array ( [0] => 我擦我擦我擦擦擦。我擦我擦我擦擦擦 ) [3] => Array ( [0] => 2012/05/12 18:06:58 ) [4] => Array ( [0] => kagakugizyutugakari ) [5] => Array ( [0] => 0 ))*/
------解决方案--------------------
- PHP code
- 提问日期:2012/05/12 18:06:58 - kagakugizyutugakari [1] => 2012/05/12 18:06:58 [2] => kag
本文来源gao!%daima.com搞$代*!码$网3
搞代gaodaima码akugizyutugakari)[User:root Time:18:44:26 Path:/home/liangdong/php]$ cat preg.php <?php$str = <<<EOF
- 我擦我擦我擦擦擦。我擦我擦我擦擦擦
- 提问日期:2012/05/12 18:06:58 - kagakugizyutugakari我擦 - 回答数:0 - 悬赏:50
我擦 > 我擦 > 我擦
EOF;$nmatches = preg_match('/.*<\/a>/Uis', $str, $matches);print_r($matches);$nmatches = preg_match('/
- .*(\d{4}\S+\s+\S+)\s*-\s*.*(.*)<\/a>/Uis', $str, $matches);print_r($matches);?>
[User:root Time:18:44:25 Path:/home/liangdong/php]$ php preg.php Array( [0] => 我擦我擦我擦擦擦。我擦我擦我擦擦擦 [1] => q1187216696)Array( [0] =>