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 图片上传类代码
Jul 17 PHP
php中使用ExcelFileParser处理excel获得数据(可作批量导入到数据库使用)
Aug 21 PHP
PHP运行模式的深入理解
Jun 03 PHP
使用PHP Socket写的POP3类
Oct 30 PHP
浅谈PHP中output_buffering
Jul 13 PHP
PHP中header函数的用法及其注意事项详解
Jun 13 PHP
PHP基于SMTP协议实现邮件发送实例代码
Apr 27 PHP
php实现数组纵向转横向并过滤重复值的方法分析
May 29 PHP
关于ThinkPhp 框架表单验证及ajax验证问题
Jul 19 PHP
Laravel 5.5官方推荐的Nginx配置学习教程
Oct 06 PHP
PHP html_entity_decode()函数讲解
Feb 25 PHP
Laravel框架处理用户的请求操作详解
Dec 20 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操作redis中的hash和zset类型数据的方法和代码例子
2014/07/05 PHP
PHP 生成微信红包代码简单
2016/03/25 PHP
PHP使用http_build_query()构造URL字符串的方法
2016/04/02 PHP
Laravel框架Auth用户认证操作实例分析
2019/09/29 PHP
js输入框邮箱自动提示功能代码实现
2013/12/10 Javascript
js判断undefined类型,undefined,null, 的区别详细解析
2013/12/16 Javascript
iframe的onreadystatechange事件在firefox下的使用
2014/04/16 Javascript
JavaScript编写推箱子游戏
2015/07/07 Javascript
jQuery实现的AJAX简单弹出层效果代码
2015/11/26 Javascript
javascript从定义到执行 你不知道的那些事
2016/01/04 Javascript
微信小程序上滑加载下拉刷新(onscrollLower)分批加载数据(一)
2017/05/11 Javascript
nodejs创建简易web服务器与文件读写的实例
2017/09/07 NodeJs
javascript流程控制语句集合
2017/09/18 Javascript
layer弹出层 iframe层去掉滚动条的实例代码
2018/08/17 Javascript
使用wxapp-img-loader自定义组件实现微信小程序图片预加载功能
2018/10/18 Javascript
Element Dialog对话框的使用示例
2020/07/26 Javascript
vue-simple-uploader上传成功之后的response获取代码
2020/09/07 Javascript
[15:56]Heroes18_暗影萨满(完美)
2014/10/31 DOTA
Python的Twisted框架上手前所必须了解的异步编程思想
2016/05/25 Python
Python自定义线程类简单示例
2018/03/23 Python
Python实现识别图片内容的方法分析
2018/07/11 Python
手把手教你使用Python创建微信机器人
2019/04/29 Python
python numpy存取文件的方式
2020/04/01 Python
python 中不同包 类 方法 之间的调用详解
2020/03/09 Python
python能开发游戏吗
2020/06/11 Python
Python如何设置指定窗口为前台活动窗口
2020/08/12 Python
国外软件测试工程师面试题
2016/12/09 面试题
大专生自荐信
2013/10/04 职场文书
如何写毕业求职自荐信
2013/11/06 职场文书
全陪导游欢迎词
2014/01/17 职场文书
《望庐山瀑布》教学反思
2014/04/22 职场文书
法制宣传月活动方案
2014/05/11 职场文书
党员群众路线剖析材料
2014/10/08 职场文书
cf战队宣传语
2015/07/13 职场文书
学校扫黄打非工作总结
2015/10/15 职场文书
写给汽车4S店的创业计划书,拿来即用!
2019/08/09 职场文书