PHP正则表达式删除字符串

时间:2015-02-11 17:45:44

标签: php regex curl preg-match-all

我有一个用于获取数据的小PHP脚本。可能这里有一个正则表达式错误,但我无法解决。

我得到的输出如下所示。如果我尝试$ title [3] [1],我得到输出后的输出:string(30) "30charstitle"

var_dump($title[3][1]); gives-> string(30) "30charstitle"   
var_dump($title[3][2]); gives-> string(50) "50charstitle"    
var_dump($title[3][3]); gives-> string(100) "100charstitle"

我想从输出中删除字符串部分和双引号,但我卡住了。基本上我只需要标题本身,不包括双引号和字符串的长度。

function siteConnect($site) {
        $ch = curl_init();
        $hc = "YahooSeeker-Testing/v3.9 (compatible; Mozilla 4.0; MSIE 5.5; Yahoo! Search - Web Search)";
        curl_setopt($ch, CURLOPT_REFERER, 'http://www.google.com');
        curl_setopt($ch, CURLOPT_URL, $site);
        curl_setopt($ch, CURLOPT_USERAGENT, $hc);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        $site = curl_exec($ch);
        curl_close($ch);

        // preg_match
        preg_match_all('@><a itemprop="url" href="http://www.example.com/id/(.*?)/(.*?).html&path=(.*?)"><span itemprop="name">(.*?)</span></a>@',$site,$title);
        $title[3][1] = strip_tags($title[3][1]);
        $title[3][1] = preg_replace('~.*?>~', '', $title[3][1]);
        var_dump($title[3][1]);
    }
    $enter = siteConnect('http://www.example.com/index.php?route=product/category&path=5_6&page=1');

2 个答案:

答案 0 :(得分:2)

替换它:

var_dump($title[3][1]);

这:

print($title[3][1]);

或者:

echo $title[3][1];

对于更好的多阵列:

print_r($title);

答案 1 :(得分:0)

你只想做一个正确的发现?如果我明白你在追求什么。

这就像。*“(。*)”。*或许?