匹配字符中链接地址程序代码,php匹配字符中链

看清一个字符串是不是富含一级链接

正文实例叙述了php相配字符中链接地址的法子。分享给大家供大家参考。具体如下:

 代码如下

判别二个字符串是不是带有一流链接,代码如下:

$str="ssdsf<a target='_blank' href='' >sdf</a>sdfss";
if(preg_match("/<a/s+href=[^>]*>|<//[^a]*a[^>]*>/i",$str))
{
echo "该字符串有超链接";
}
else
{
echo "该字符串未有超链接标志";
}
?>

复制代码 代码如下:

下边大家即使过滤连接部份。

$str="ssdsf<a target='_blank' href='//www.jb51.net/' >sdf</a>sdfss";
if(preg_match("/<a/s+href=[^>]*>|<//[^a]*a[^>]*>/i",$str))
{
echo "该字符串有超链接";
}
else
{
echo "该字符串未有超链接标志";
}
?>

 代码如下

上边大家如若过滤连接部份,代码如下:

<?php
echo preg_replace("/(?<=href=)([^>]*)(?=>)/i","#", "<a href='www.111cn.net'>你好,点这里寻访</a><a href='www.111cn.net'>你好,点这里拜访</a>");
?>

复制代码 代码如下:

正则:/(?<=href=)([^>]*)(?=>)/

<?php 
echo preg_replace("/(?<=href=)([^>]*)(?=>)/i","#", "<a href='www.jb51.net'>你好,点这里走访</a><a href='www.jb51.net'>你好,点这里探问</a>"); 
?>

(?<=exp) 相配exp前边的岗位
(?=exp) 相称exp前边的职位
此正则 相称 在 href= 之后 “>” 此前 的 非 “>” 的有所字符

正则:/(?<=href=)([^>]*)(?=>)/

例子:<a href='www.111cn.net '>

(?<=exp) 相配exp前面的义务

找到那些字符(url)用 # 替换,就能够去掉html里的富有链接。

(?=exp) 相称exp前边的职位

于今享受三个提取一级连接的实例

此正则相配 在 href= 之后 “>” 从前 的 非 “>” 的具有字符

 

事例:<a href='www.jb51.net'>,找到那个字符(url)用 # 替换,就足以去掉html里的装有链接,未来享受多少个提取顶级连接的实例,代码如下:

 代码如下

复制代码 代码如下:

function match_links($document) {   

function match_links($document) {   
    preg_match_all("'<s*as.*?hrefs*=s*(["'])?(?(1)(.*?)1|([^s>]+))[^>]*>?(.*?)</a>'isx",$document,$links);                       
    while(list($key,$val) = each($links[2])) {
        if(!emptyempty($val))
            $match['link'][] = $val;
    }
    while(list($key,$val) = each($links[3])) {
        if(!emptyempty($val))
            $match['link'][] = $val;
    }       
    while(list($key,$val) = each($links[4])) {
        if(!emptyempty($val))
            $match['content'][] = $val;
    }
    while(list($key,$val) = each($links[0])) {
        if(!emptyempty($val))
            $match['all'][] = $val;
    }               
    return $match;
}

    preg_match_all("'<s*as.*?hrefs*=s*(["'])?(?(1)(.*?)1|([^s>]+))[^>]*>?(.*?)</a>'isx",$document,$links);                       

可望本文所述对大家的PHP程序设计具有助于。

    while(list($key,$val) = each($links[2])) {

你或然感兴趣的稿子:

  • php中最简便易行的字符串相配算法
  • 正则相配密码只可以是数字和字母组合字符串功用【php与js完毕】
  • PHP使用数组依次替换字符串中相配项
  • PHP的preg_match相称字符串长度难题解决格局
  • PHP中preg_match函数正则相配的字符串长度难点
  • PHP达成字符串翻转成效的格局【递归与循环算法】
  • PHP中strnatcmp()函数“自然排序算法”进行字符串比较用法深入分析(相比strcmp函数)
  • PHP中正则表明式对UNICODE字符码的相称方法
  • 基于PHP达成栈数据结谈判括号相配算法示例
  • PHP落成的字符串相配算法示例【sunday算法】

        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;

}

本文由365bet体育在线官网发布于365bet,转载请注明出处:匹配字符中链接地址程序代码,php匹配字符中链

TAG标签:
Ctrl+D 将本页面保存为书签,全面了解最新资讯,方便快捷。