php 匹配url 正则表达式代码
这是个获取文章内容中所有链接的php正则表达式
<?php
$str = "";
$reg = "<a\s+href=[\"|\']?([^>\"\' ]+)[\"|\']?s*[^>]*>([^>]+)<\/a>/";
//下面这个实例是获取内容中域名正则表达式
function get_domain($url) {
$pattern = "/[\w-]+.(com|net|org|gov|cc|biz|info|cn)(.(cn|hk))*/";
preg_match($pattern, $url, $matches);
if (count($matches) > 0) {
return $matches[0];
} else {
$rs = parse_url($url);
$main_url = $rs["host"];
if (!strcmp(long2ip(sprintf("%u", ip2long($main_url))) , $main_url)) {
return $main_url;
} else {
$arr = explode(".", $main_url);
$count = count($arr);
$endArr = array(
"com",
"net",
"org",
"3322"
); //com.cn net.cn 等情况
if (in_array($arr[$count - 2], $endArr)) {
$domain = $arr[$count - 3] . "." . $arr[$count - 2] . "." . $arr[$count - 1];
} else {
$domain = $arr[$count - 2] . "." . $arr[$count - 1];
}
return $domain;
}
}
}
//实例
$str = "jfkdlajfdafdjak;www.phprm.com";
echo get_domain($str)
//得出值为phprm.com教程地址:http://www.phprm.com/code/33321.html
欢迎转载!但请带上文章地址^^