Home >php教程 >php手册 >php实现使用正则将文本中的网址转换成链接标签

php实现使用正则将文本中的网址转换成链接标签

WBOY
WBOYOriginal
2016-06-06 20:16:141047browse

本文给大家分享一段php中使用正则表达式将网址转换成A链接的函数代码,十分简洁实用,这里推荐给大家

复制代码 代码如下:


function text2links($str='') {
    if($str=='' or !preg_match('/(http|www\.|@)/i', $str)) { return $str; }
    $lines = explode("\n", $str); $new_text = '';
    while (list($k,$l) = each($lines)) {
        // replace links:
        $l = preg_replace("/([ \t]|^)www\./i", "\\1", $l);
        $l = preg_replace("/([ \t]|^)ftp\./i", "\\1ftp://ftp.", $l);
        $l = preg_replace("/(http:\/\/[^ )\r\n!]+)/i",
            "\\1", $l);
        $l = preg_replace("/(https:\/\/[^ )\r\n!]+)/i",
            "\\1", $l);
        $l = preg_replace("/(ftp:\/\/[^ )\r\n!]+)/i",
            "\\1", $l);
        $l = preg_replace(
            "/([-a-z0-9_]+(\.[_a-z0-9-]+)*@([a-z0-9-]+(\.[a-z0-9-]+)+))/i",
            "\\1", $l);
        $new_text .= $l."\n";
    }
    return $new_text;
}

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn