php匹配字符中链接地址的方法
2015-01-24信息快讯网
这篇文章主要介绍了php匹配字符中链接地址的方法,涉及正则匹配与提取超链接的方法,是非常实用的正则技巧,需要的朋友可以参考下
本文实例讲述了php匹配字符中链接地址的方法。分享给大家供大家参考。具体如下:
判断一个字符串是否含有超级链接,代码如下:
$str="ssdsf<a target='_blank' href='http://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.jb51.net'>你好,点这里看看</a><a href='www.jb51.net'>你好,点这里看看</a>");
?>正则:/(?<=href=)([^>]*)(?=>)/
(?<=exp) 匹配exp后面的位置
(?=exp) 匹配exp前面的位置
此正则匹配 在 href= 之后 “>” 之前 的 非 “>” 的所有字符
例子:<a href='www.jb51.net'>,找到这些字符(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使用正则表达式获取图片url的方法
php使用CURL伪造IP和来源实例详解
php+mysql实现无限分类实例详解
php截取html字符串及自动补全html标签的方法
php在linux下检测mysql同步状态的方法
php通过Chianz.com获取IP地址与地区的方法
php+mysql删除指定编号员工信息的方法
php正则匹配html中带class的div并选取其中内容的方法
php+ajax实时输入自动搜索匹配的方法
php有道翻译api调用方法实例
php用户注册时常用的检验函数实例总结
在SAE上搭建最新wordpress的方法
PHP获取当前完整URL地址的函数
学习php开源项目的源码指南
php数组添加元素方法小结
php获取数组元素中头一个数组元素值的实现方法
thinkphp3.2.2实现生成多张缩略图的方法
ThinkPHP中使用ajax接收json数据的方法
php判断文件上传类型及过滤不安全数据的方法
PHP使用glob函数遍历目录或文件夹的方法
php中最简单的字符串匹配算法
PHP实现将科学计数法转换为原始数字字符串的方法
yii2.0之GridView自定义按钮和链接用法
php表单敏感字符过滤类
php实现使用正则将文本中的网址转换成链接标签
php提取字符串中网站url地址的方法
PHP清除字符串中所有无用标签的方法
浅谈php正则表达式中的非贪婪模式匹配的使用
php调用新浪短链接API的方法
php结合js实现点击超链接执行删除确认操作
PHP链接MySQL的常用扩展函数