php匹配字符中链接地址的方法


Posted in PHP onDecember 22, 2014

本文实例讲述了php匹配字符中链接地址的方法。分享给大家供大家参考。具体如下:

判断一个字符串是否含有超级链接,代码如下:

$str="ssdsf<a target='_blank' href='https://3water.com/' >sdf</a>sdfss"; 

if(preg_match("/<a/s+href=[^>]*>|<//[^a]*a[^>]*>/i",$str)) 

{ 

echo "该字符串有超链接"; 

} 

else 

{ 

echo "该字符串没有超链接标记"; 

} 

?>

下面我们只要过滤连接部份,代码如下:
<?php  

echo preg_replace("/(?<=href=)([^>]*)(?=>)/i","#", "<a href='3water.com'>你好,点这里看看</a><a href='3water.com'>你好,点这里看看</a>");  

?>

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

(?<=exp) 匹配exp后面的位置

(?=exp) 匹配exp前面的位置

此正则匹配 在 href= 之后 “>” 之前 的 非 “>” 的所有字符

例子:<a href='3water.com'>,找到这些字符(url)用 # 替换,就可以去掉html里的所有链接,现在分享一个提取超级连接的实例,代码如下:

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; 

}

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
php4的彩蛋
Oct 09 PHP
php下使用以下代码连接并测试
Apr 09 PHP
Apache服务器无法使用的解决方法
May 08 PHP
php 解压rar文件及zip文件的方法
May 05 PHP
php中explode的负数limit用法分析
Feb 27 PHP
php eval函数一句话木马代码
May 21 PHP
php二维码生成
Oct 19 PHP
Laravel中使用FormRequest进行表单验证方法及问题汇总
Jun 19 PHP
php进程间通讯实例分析
Jul 11 PHP
PHP使用数组实现矩阵数学运算的方法示例
May 29 PHP
Yii2框架自定义类统一处理url操作示例
May 25 PHP
PHP实现微信提现功能(微信商城)
Nov 21 PHP
php用户注册时常用的检验函数实例总结
Dec 22 #PHP
CentOS6.5 编译安装lnmp环境
Dec 21 #PHP
在SAE上搭建最新wordpress的方法
Dec 21 #PHP
PHP获取当前完整URL地址的函数
Dec 21 #PHP
学习php开源项目的源码指南
Dec 21 #PHP
php数组添加元素方法小结
Dec 20 #PHP
php获取数组元素中头一个数组元素值的实现方法
Dec 20 #PHP
You might like
关于php 接口问题(php接口主要也就是运用curl,curl函数)
2013/07/01 PHP
Laravel框架Eloquent ORM修改数据操作示例
2019/12/03 PHP
一个tab标签切换效果代码
2009/03/27 Javascript
JS重要知识点小结
2011/11/06 Javascript
jquery实现div拖拽宽度示例代码
2013/07/31 Javascript
js浮点数精确计算(加、减、乘、除)
2013/12/26 Javascript
解析jQuery的三种bind/One/Live事件绑定使用方法
2013/12/30 Javascript
javascript实现多级联动下拉菜单的方法
2015/02/06 Javascript
浅谈javascript中的闭包
2015/05/13 Javascript
JavaScript中的Math.E属性使用详解
2015/06/12 Javascript
javascript检查浏览器是否已经启用XX功能
2015/07/10 Javascript
JavaScript自定义函数实现查找两个字符串最长公共子串的方法
2016/11/24 Javascript
学习使用bootstrap的modal和carousel
2016/12/09 Javascript
深入理解Javascript箭头函数中的this
2017/02/13 Javascript
js a标签点击事件
2017/03/30 Javascript
jquery手机触屏滑动拼音字母城市选择器的实例代码
2017/12/11 jQuery
一步一步的了解webpack4的splitChunk插件(小结)
2018/09/17 Javascript
vue实现分页组件
2020/06/16 Javascript
vue webpack重写cookie路径的方法
2019/07/10 Javascript
vue实现弹幕功能
2019/10/25 Javascript
解决elementui表格操作列自适应列宽
2020/12/28 Javascript
python中ConfigParse模块的用法
2014/09/29 Python
基于Python的关键字监控及告警
2017/07/06 Python
python 字典操作提取key,value的方法
2019/06/26 Python
pytorch中如何使用DataLoader对数据集进行批处理的方法
2019/08/06 Python
pytorch 图像预处理之减去均值,除以方差的实例
2020/01/02 Python
Python基础之列表常见操作经典实例详解
2020/02/26 Python
2020年10款优秀的Python第三方库,看看有你中意的吗?
2021/01/12 Python
用HTML5实现手机摇一摇的功能的教程
2012/10/30 HTML / CSS
任意存:BOXFUL
2018/05/21 全球购物
关爱留守儿童标语
2014/06/18 职场文书
园林专业毕业生自荐信
2014/07/04 职场文书
信用卡结清证明怎么写
2014/09/13 职场文书
干部作风建设年活动剖析材料
2014/10/23 职场文书
珍惜时间的诗歌赏析
2019/08/23 职场文书
《仙剑客栈2》第一弹正式宣传片公开 年内发售
2022/04/07 其他游戏