http:\/\/lrd.yahooapis.com\/_ylc=X3oDMTVjaGdkOGVmBF9TAzIwMjMxNTI3MDIEYXBwaWQDTEVoNUxhVFYzNEZKNl81bzh2R2llcWR1RlQyNkhqYm55WW13WTVnQVBWeWdsV21iQmZwSVN0XzVubU1PTTBIMUdiZkwEY2xpZW50A2Jvc3MEc2VydmljZQNCT1NTBHNsawN0aXRsZQRzcmNwdmlkA1NMbm0zV0tJY3JySklWTzBTZEQ3WkZ0dVR3dm10MDF4Z2I0QUF1dVE-\/SIG=10nolt70f\/**http%3A\/\/jquery.com%3Fx=0http:\/\/lrd.yahooapis.com\/_ylc=X3oDMTVjaGdkOGVmBF9TAzIwMjMxNTI3MDIEYXBwaWQDTEVoNUxhVFYzNEZKNl81bzh2R2llcWR1RlQyNkhqYm55WW13WTVnQVBWeWdsV21iQmZwSVN0XzVubU1PTTBIMUdiZkwEY2xpZW50A2Jvc3MEc2VydmljZQNCT1NTBHNsawN0aXRsZQRzcmNwdmlkA1NMbm0zV0tJY3JySklWTzBTZEQ3WkZ0dVR3dm10MDF4Z2I0QUF1dVE-\/SIG=118du27i5\/**http%3A\/\/en.wikipedia.org\/wiki\/JQuery%3Fx=0
                
有许多这样的地址,如何去掉yahoo的前缀验证地址,正则出网站的真实地址? 即 两个星号 ** 后面, %3Fx=0 前面的那段地址?
谢谢。                

解决方案 »

  1.   


    $str = <<<eof
    http:\/\/lrd.yahooapis.com\/_ylc=X3oDMTVjaGdkOGVmBF9TAzIwMjMxNTI3MDIEYXBwaWQDTEVoNUxhVFYzNEZKNl81bzh2R2llcWR1RlQyNkhqYm55WW13WTVnQVBWeWdsV21iQmZwSVN0XzVubU1PTTBIMUdiZkwEY2xpZW50A2Jvc3MEc2VydmljZQNCT1NTBHNsawN0aXRsZQRzcmNwdmlkA1NMbm0zV0tJY3JySklWTzBTZEQ3WkZ0dVR3dm10MDF4Z2I0QUF1dVE-\/SIG=10nolt70f\/**http%3A\/\/jquery.com%3Fx=0 http:\/\/lrd.yahooapis.com\/_ylc=X3oDMTVjaGdkOGVmBF9TAzIwMjMxNTI3MDIEYXBwaWQDTEVoNUxhVFYzNEZKNl81bzh2R2llcWR1RlQyNkhqYm55WW13WTVnQVBWeWdsV21iQmZwSVN0XzVubU1PTTBIMUdiZkwEY2xpZW50A2Jvc3MEc2VydmljZQNCT1NTBHNsawN0aXRsZQRzcmNwdmlkA1NMbm0zV0tJY3JySklWTzBTZEQ3WkZ0dVR3dm10MDF4Z2I0QUF1dVE-\/SIG=118du27i5\/**http%3A\/\/en.wikipedia.org\/wiki\/JQuery%3Fx=0
    eof;
    $reg="/(?<=\*\*)(.*?)(?=%3Fx\=0)/is";
    preg_match_all($reg,$str,$arr);
    foreach($arr[1] as $v){
      echo urldecode(stripcslashes($v)) . "<br>";
    }