首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

请教PHP用正则表达式,下面这种情况

2013-09-25 
请问PHP用正则表达式,下面这种情况?一个项目中可能出现以下两种情况,第一种:........SADFA:a idJ_WSAD

请问PHP用正则表达式,下面这种情况?
一个项目中可能出现以下两种情况,

第一种:
........SADFA:

    <a id="J_WSAD" href="javascript:void(0)">123</a>

SLDKJLSKDFJ.........

第二种:
........SADFA:
                                               0

SLDKJLSKDFJ.........

请问大侠们,有没有办法用一个正则表达式就表示了啊?
我想的:
preg_match("/SADFA:.*?(\d+)/is",$text,$reg);
这样结果就拿到javascript:void(0)里面这个0了,
改成下面的:
preg_match("/SADFA:.*?([1-9]\d*)/is",$text,$reg);
可以拿到红色部分的数字,但是红色部分是0的话,我就没办法了,求帮忙。。。
[解决办法]

<?php
$s1='........SADFA <a id="J_WSAD" href="javascript:void(a10)">123</a>SLDKJLSKDFJ.........';
$s1=strip_tags($s1);
preg_match_all("/\d+/",$s1,$reg);
print_r($reg);
?>

[解决办法]
$s =<<< TXT
第一种:
........SADFA:

    <a id="J_WSAD" href="javascript:void(0)">123</a>

SLDKJLSKDFJ.........

第二种:
........SADFA:
                                               0

SLDKJLSKDFJ.........
TXT;
preg_match_all('/SADFA:.+[>\s](\d+)\b/sU', $s, $r);
print_r($r);
Array
(
    [0] => Array
        (
            [0] => SADFA:

    <a id="J_WSAD" href="javascript:void(0)">123
            [1] => SADFA:
                                               0


        )

    [1] => Array
        (
            [0] => 123
            [1] => 0
        )

)

热点排行