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 相关文章推荐
PHPShop存在多个安全漏洞
Oct 09 PHP
BBS(php &amp; mysql)完整版(八)
Oct 09 PHP
php 获取本机外网/公网IP的代码
May 09 PHP
在PHP中PDO解决中文乱码问题的一些补充
Sep 06 PHP
PDO版本问题 Invalid parameter number: no parameters were bound
Jan 06 PHP
PHP中::、-&amp;gt;、self、$this几种操作符的区别介绍
Apr 24 PHP
php5.2 Json不能正确处理中文、GB编码的解决方法
Mar 28 PHP
PHP对XML内容进行修改和删除实例代码
Oct 26 PHP
深入浅出讲解:php的socket通信原理
Dec 03 PHP
PHP实现的链式队列结构示例
Sep 15 PHP
PHP数据源架构模式之表入口模式实例分析
Jan 23 PHP
PHP实现简单日历类编写
Aug 28 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者的疑难问答(2)
2006/10/09 PHP
关于初学PHP时的知识积累总结
2013/06/07 PHP
PHP读取大文件的几种方法介绍
2016/10/27 PHP
PHP中检索字符串的方法分析【strstr与substr_count方法】
2017/02/17 PHP
asp(javascript)全角半角转换代码 dbc2sbc
2009/08/06 Javascript
jQuery的实现原理的模拟代码 -4 重要的扩展函数 extend
2010/08/03 Javascript
关于javascript中this关键字(翻译+自我理解)
2010/10/20 Javascript
推荐17个优美新鲜的jQuery的工具提示插件
2012/09/14 Javascript
几种延迟加载JS代码的方法加快网页的访问速度
2013/10/12 Javascript
JS数组(Array)处理函数整理
2014/12/07 Javascript
javascript原始值和对象引用实例分析
2015/04/25 Javascript
基于d3.js实现实时刷新的折线图
2016/08/03 Javascript
如何提高javascript加载速度
2016/12/26 Javascript
Vue2.0利用 v-model 实现组件props双向绑定的优美解决方案
2017/03/13 Javascript
vue拦截器Vue.http.interceptors.push使用详解
2017/04/22 Javascript
Require.js的基本用法详解
2017/07/03 Javascript
vue使用技巧及vue项目中遇到的问题
2018/06/04 Javascript
浅谈React Native 传参的几种方式(小结)
2019/05/21 Javascript
jQuery操作attr、prop、val()/text()/html()、class属性
2019/05/23 jQuery
Python实现简单的可逆加密程序实例
2015/03/05 Python
Python获取linux主机ip的简单实现方法
2016/04/18 Python
virtualenv实现多个版本Python共存
2017/08/21 Python
pandas.DataFrame的pivot()和unstack()实现行转列
2019/07/06 Python
Jupyter打开图形界面并画出正弦函数图像实例
2020/04/24 Python
Django设置Postgresql的操作
2020/05/14 Python
pycharm 多行批量缩进和反向缩进快捷键介绍
2021/01/15 Python
Under Armour安德玛英国官网:美国高端运动科技品牌
2018/09/17 全球购物
Charles & Colvard官网:美国莫桑石品牌
2019/06/05 全球购物
澳大利亚买卖正宗二手奢侈品交易平台:Luxe.It.Fwd
2019/10/16 全球购物
事业单位接收函
2014/01/10 职场文书
应届大学生求职信
2014/07/20 职场文书
知识就是力量演讲稿
2014/09/13 职场文书
安全员岗位职责范本
2015/04/11 职场文书
公司市场部岗位职责
2015/04/15 职场文书
联谊活动总结范文
2015/05/09 职场文书
Nginx防盗链与服务优化配置的全过程
2022/01/18 Servers