首页 > 语言 > PHP > 正文

php 匹配url 正则表达式代码

2024-09-04 11:47:33
字体:
来源:转载
供稿:网友

这是个获取文章内容中所有链接的php正则表达式.

$str ="";

$reg = "<a[sS]*?(href)s*=s*(?(?=["'])((["'])(?<href>[^"']*))|(?<src>[^s>]+))[sS]*?>"; 

下面这个实例是获取内容中域名正则表达式,代码如下:

  1. function get_domain($url){ 
  2.   $pattern = "/[w-]+.(com|net|org|gov|cc|biz|info|cn)(.(cn|hk))*/"
  3.   preg_match($pattern$url$matches); 
  4.   if(count($matches) > 0) { 
  5.    return $matches[0]; 
  6.   }else
  7.    $rs = parse_url($url); 
  8.    $main_url = $rs["host"]; 
  9.    if(!strcmp(long2ip(sprintf("%u",ip2long($main_url))),$main_url)) { 
  10.     return $main_url
  11.    }else
  12.     $arr = explode(".",$main_url); 
  13.     $count=count($arr); 
  14.     $endArr = array("com","net","org","3322");//com.cn  net.cn 等情况 
  15.     if (in_array($arr[$count-2],$endArr)){ 
  16.      $domain = $arr[$count-3].".".$arr[$count-2].".".$arr[$count-1]; 
  17.     }else
  18.      $domain =  $arr[$count-2].".".$arr[$count-1]; 
  19.     }//开源代码Vevb.com 
  20.     return $domain
  21.    } 
  22.   } 
  23.  } 

使用实例如下:

$str ="jfkdlajfdafdjak;www.Vevb.com";

echo get_domain($str)

得出值为Vevb.com

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表