[php正则表达式匹配验证码]PHP正则表达式匹配验证提取网址URL实例总结

时间:2019-10-07  来源:php正则表达式  阅读:

 匹配网址 URL 的正则表达式

 代码如下

(((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)

示例:PHP 正则表达式自动匹配字符串是否为 url 地址,是的话自动加上链接。

 代码如下

function autolink($rurl){   
   $rurl = eregi_replace("(((f|ht){1}tp://)[-a-zA-Z0-9@:%_
\+.~#?&//=]+)", "\1
", $rurl);   // rel=nofollow 是告诉搜索引擎不要去抓取这个链接  
   if( strpos($rurl "http") === FALSE ){   
      $rurl = eregi_replace("(www.[-a-zA-Z0-9@:%_\+.~#?&//=]+
)", "\1", $rurl);
      }else{   
         $rurl = eregi_replace("([[:space:]()[{}])(www.[-a-zA-Z0-9@
:%_\+.~#?&//=]+)", "\1 low>\2", $rurl);   
   }   
   return $rurl;   
}   
?>

调用 autolink() 函数

 代码如下


$str = "http://www.111cn.net";   
echo autolink($str);   
?>


例子1 获得https开头的例子

 代码如下

//https?://([-\w\.]+)+(:\d+)?(/([\w/_\.]*(\?\S+)?)?)?

//PHP Example: Automatically link URL"s inside text.

$text = preg_replace("@(https?://([-\w\.]+)+(:\d+)?(/([\w/_\.]*(\?\S+)?)?)?)@", "$1", $text);


例子2 直接提取页面中  代码如下 function match_links($document) {
preg_match_all(""<\s*a\s.*?href\s*=\s*([\"\"])?(?(1)(.*?)\\1|([^\s\>]+))[^>]*>?(.*?)"isx",$document,$links);
while(list($key,$val) = each($links[2])) {
if(!empty($val))
$match["link"][] = $val;
}
while(list($key,$val) = each($links[3])) {
if(!empty($val))
$match["link"][] = $val;
}
while(list($key,$val) = each($links[4])) {
if(!empty($val))
$match["content"][] = $val;
}
while(list($key,$val) = each($links[0])) {
if(!empty($val))
$match["all"][] = $val;
}
return $match;
}

好了到此关于正则获得url地址也就介绍完了,上面的几个例子各有所长了,大家可以根据自己的需求来选择更合适自己的匹配验证提取网址URL正则。

 

[php正则表达式匹配验证码]PHP正则表达式匹配验证提取网址URL实例总结

http://m.bbyears.com/jiaocheng/71768.html

推荐访问:php邮箱正则表达式
相关阅读 猜你喜欢
本类排行 本类最新