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 相关文章推荐
新版PHP极大的增强功能和性能
Oct 09 PHP
php基础知识:函数基础知识
Dec 13 PHP
PHP下几种删除目录的方法总结
Aug 19 PHP
php REMOTE_ADDR之获取访客IP的代码
Apr 22 PHP
php email邮箱正则
Oct 08 PHP
PHP数组实例总结与说明
Aug 23 PHP
PHP使用递归生成文章树
Apr 21 PHP
thinkphp实现163、QQ邮箱收发邮件的方法
Dec 18 PHP
微信公众号模板消息群发php代码示例
Dec 29 PHP
Yii框架引用插件和ckeditor中body与P标签去除的方法
Jan 19 PHP
php实现xml转换数组的方法示例
Feb 03 PHP
PHP生成二维码与识别二维码的方法详解【附源码下载】
Mar 07 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
德生PL660的电路分析和打磨
2021/03/02 无线电
PHP数组内存耗用太多问题的解决方法
2010/04/05 PHP
PHP中is_file()函数使用指南
2015/05/08 PHP
如何通过Apache在本地配置多个虚拟主机
2020/07/29 PHP
基于jquery的一个拖拽到指定区域内的效果
2011/09/21 Javascript
jQuery UI Autocomplete 1.8.16 中文输入修正代码
2012/04/16 Javascript
基于jquery实现的一个选择中国大学的弹框 (数据、步骤、代码)
2012/07/26 Javascript
JS实现点击链接取消跳转效果的方法
2014/01/24 Javascript
jQuery横向擦除焦点图特效代码分享
2015/09/06 Javascript
JavaScript编程学习技巧汇总
2016/02/21 Javascript
微信小程序 MINA文件结构
2016/10/17 Javascript
bootstrap实现图片自动轮播
2016/12/21 Javascript
jQuery实现的简单动态添加、删除表格功能示例
2017/09/21 jQuery
利用weixin-java-miniapp生成小程序码并直接返回图片文件流的方法
2019/03/29 Javascript
关于JavaScript数组去重的一些理解汇总
2020/09/10 Javascript
[05:08]顺网杯ISS-DOTA2赛歌 少女偶像Lunar青春演绎
2013/12/05 DOTA
python 字典(dict)遍历的四种方法性能测试报告
2014/06/25 Python
详细解读Python中解析XML数据的方法
2015/10/15 Python
微信 用脚本查看是否被微信好友删除
2016/10/28 Python
Python 模拟购物车的实例讲解
2017/09/11 Python
python PyTorch预训练示例
2018/02/11 Python
使用python获取(宜宾市地震信息)地震信息
2019/06/20 Python
Django框架视图函数设计示例
2019/07/29 Python
Python面向对象程序设计之继承、多态原理与用法详解
2020/03/23 Python
django的autoreload机制实现
2020/06/03 Python
基于python判断字符串括号是否闭合{}[]()
2020/09/21 Python
英国最大最好的无人机商店:Drones Direct
2019/07/12 全球购物
四风专项整治工作情况汇报
2014/10/28 职场文书
大班下学期个人总结
2015/02/13 职场文书
2015年度环卫处工作总结
2015/07/24 职场文书
爱国主题班会教案
2015/08/14 职场文书
2015教师个人年度工作总结
2015/10/23 职场文书
python生成可执行exe控制Microsip自动填写号码并拨打功能
2021/06/21 Python
利用Python判断整数是否是回文数的3种方法总结
2021/07/07 Python
JS前端可视化canvas动画原理及其推导实现
2022/08/05 Javascript
使用CSS实现按钮边缘跑马灯动画
2023/05/07 HTML / CSS