我需要什么正则表达式才能在PHP中找到字符串?

时间:2019-03-07 15:17:43

标签: php regex preg-match file-get-contents

我正在尝试查找字符串:

sd_src:” https://video.fhyd6-1.fna.fbcdn.net/v/t42.9040-2/10000000_2379299605422668_4104252399957311488_n.mp4?_nc_cat=1&efg=eyJybHIiOjY0OCwicmxhIjoyODQ5LCJ2ZW5jb2RlX3RhZyI6InN2ZV9zZCJ9&rl=648&vabr=360&_nc_ht=video.fhyd6-1.fna&oh=2f555df6a07d18aa1f472d972dab0114&oe=5C80FCA5

链接https://www.facebook.com/PeinadosFacilesRapido/videos/399225660865821/的源代码中,并将其打印为PHP。

看看您将了解的代码:

underlayCallback

在$ sourceurl的源代码中找到此字符串的正则表达式是什么?

3 个答案:

答案 0 :(得分:0)

您可以使用:

preg_match('~'.preg_quote($string, '~').'~i', $sourceurl, $link);

答案 1 :(得分:0)

您的示例中的正则表达式不需要找到您的链接。

您可以:

$sourceurl = file_get_contents('https://www.facebook.com/PeinadosFacilesRapido/videos/399225660865821/');

if ( stripos($sourceurl, $link))
{

    // do something
}

答案 2 :(得分:0)

最可靠的方法是使用HTML解析器,但这应该可行:

<?php
    $sourceurl = file_get_contents('https://www.facebook.com/PeinadosFacilesRapido/videos/399225660865821/');

    preg_match('/sd_src:"(.*?)"/s', $sourceurl, $linkArray);

    $link = $linkArray[1];

    echo $link;