【问题标题】:PHP Find specific domain link in stringPHP在字符串中查找特定的域链接
【发布时间】:2017-04-28 16:11:54
【问题描述】:

我需要在文本中找到一个以域 zippyshare 开头的 url 并将其放在 var 中。我知道我必须使用正则表达式,但我不知道怎么做。假设我们在文本中有 3 个链接

Facebook: https://facebook.com/pumpsquadofficial Instagram: https://instagram.com/pump_squadpl DOWNLOAD MP3: http://www42.zippyshare.com/v/d6LnGjH8/file.html

我需要找到这个链接“www.42.zippyshare.com/v/blahblahblah”并将其放入<a href="$link">。你知道怎么做吗?对不起我的英语。

【问题讨论】:

    标签: php hyperlink get expression


    【解决方案1】:

    你的问题很模糊......显然你可以提取链接寻找该域名:

    <?php
    $data = <<<LINKS
    Facebook: https://facebook.com/pumpsquadofficial Instagram: https://instagram.com/pump_squadpl DOWNLOAD MP3: http://www42.zippyshare.com/v/d6LnGjH8/file.html Some more text
    LINKS;
    preg_match('~(http://\w+\.zippyshare\.com/[^\s]+)~', $data, $tokens);
    echo sprintf('<a href="%s">', $tokens[1]);
    

    输出显然是:

    <a href="http://www42.zippyshare.com/v/d6LnGjH8/file.html">
    

    不过,我认为花一些时间来定义您实际上可以依赖哪些信息来提取该链接是有意义的。域真的总是zippyshare.com 吗?或者您可能需要始终提取DOWNLOAD MP3 后面的链接?

    【讨论】:

    • 这就是我一直在寻找的!非常感谢!是的,我想输出链接 zippyshare.com,域始终相同。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-13
    • 1970-01-01
    • 1970-01-01
    • 2020-04-24
    相关资源
    最近更新 更多