php正则表达式获取内容所有链接
方法一:
function get_all_url($code){
preg_match_all('/<as+href=["|']?([^>"' ]+)["|']?s*[^>]*>([^>]+)</a>/i',$code,$arr);
return array('name'=>$arr[2],'url'=>$arr[1]);
}
方法二:
/**
* date 2015-07-24
**/
$site=substr($url,0,strpos($url,"/",8));//站点
$base=substr($url,0,strrpos($url,"/")+1);//文件所在目录
$fp = fopen($url, "r" );//打开url
while(!feof($fp))$contents.=fread($fp,1024);//
$pattern="|href=['"]?([^ '"]+)['" ]|u";
preg_match_all($pattern,$contents, $regarr, preg_set_order);//匹配所有href=
for($i=0;$i<count($regarr);$i++){//遍历所有匹配
if(!eregi("://",$regarr[$i][1]))//是否是相对路径,即是否还有://
if(substr($regarr[$i][1],0,1)=="/")//是否是站点的根目录
echo "link".($i+1).":".$site.$regarr[$i][1]."<br/>";//根目录
else
echo "link".($i+1).":".$base.$regarr[$i][1]."<br/>";//当前目录
else
echo "link".($i+1).":".$regarr[$i][1]."<br/>";//相对路径
}
fclose($fp);
以上所述就是本文的全部内容了,希望大家能够喜欢。
相关推荐
-
WordPress中获取页面链接和标题的相关PHP函数用法解析
get_permalink()(获取文章或页面链接) get_permalink() 用来根据固定连接返回文章或者页面的链接.在获取链接时 get_permalink() 函数需要知道要获取的文章的 ID,如果在循环中则自动默认使用当前文章. 用法 get_permalink( $id, $leavename ); 参数 $id (混合)(可选)文章或者页面的 ID(整数):还可以是文章对象. 默认值:在循环中自动调用当前的文章 $leavename (布尔)(可选)转化成链接是是否忽略文章别名
-
PHP批量获取网页中所有固定种子链接的方法
本文实例讲述了PHP批量获取网页中所有固定种子链接的方法.分享给大家供大家参考,具体如下: 经常的下载链接比较多的时候,就像一次性将所有的链接添加到迅雷或者电炉,但是没有在这种选项,怎么办,咱是PHPer啊,这事儿难不到咱 且看代码,当然要换成你的,要根据具体情况来做修改. <?php header("content-type:text/html;charset=utf8"); $str = file_get_contents('./ShowFile.asp'); $str1 =
-
php获取超链接文本内容的正则表达式(五种方法)
废话不多说了,直接跟大家分享五种方法,通过代码讲解php获取超链接文本内容的正则表达式. //方法一 preg_match_all("/<(a|a)[s]{0,1}[w=":()]*>[ ]*(check user)[ ]*</(a|a)>/i",$string,$matches); //方法二 preg_match_all("/<a[dd]*>check user</a>/i",$string,$match
-
php获取网页上所有链接的方法
本文实例讲述了php取得网页上所有链接的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <?php function get_all_url($code){ preg_match_all('/<as+href=["|']?([^>"' ]+)["|']?s*[^>]*>([^>]+)</a>/i',$code,$arr); return array('name'=>$arr[2],'u
-
php批量删除超链接的实现方法
清除掉一段html文本内容中的超链接最常见的写法可以如下: 复制代码 代码如下: $str=preg_replace("/<a[^>]*href=[^>]*>|<\/[^a]*a[^>]*>/i","",$content); 1.删除html文本内容中的超链接 复制代码 代码如下: ereg_replace("<a [^>]*>|<\/a>","",$co
-
PHP获取短链接跳转后的真实地址和响应头信息的方法
获取到一个短连接,需要将短连接转换成真实的网址,通过查资料,发现 PHP 提供了一个函数 get_headers() ,可以完成这个任务,先把 头部信息获取到,然后再分析跳转地址即可: 复制代码 代码如下: $url = 'http://t.cn/h5mwx'; $headers = get_headers($url, TRUE); print_r($headers); //输出跳转到的网址 echo $headers['Location']; 附完整数组: 复制代码 代码如下: Array (
-
php 自写函数代码 获取关键字 去超链接
1.根据权重获取关键字 复制代码 代码如下: function getkey($contents){ $rows = strip_tags($contents); $arr = array(' ',' ',"\s", "\r\n", "\n", "\r", "\t", ">", "“", "”"); $qc_rows = str_replac
-
简介WordPress中用于获取首页和站点链接的PHP函数
home_url()(获取首页链接) ome_url() 函数用来获取 WordPress 的首页链接. 用法 home_url( $path, $scheme ); 参数 $path (字符串)(可选)在首页链接后边追加的内容,是相对链接. 默认值:None $scheme (字符串)(可选)链接协议,只支持 "http","https" 和 "relative". 默认值:null 返回值 (字符串)返回首页 URL 加上 $path 参数.
-
php正则表达式获取内容所有链接
方法一: function get_all_url($code){ preg_match_all('/<as+href=["|']?([^>"' ]+)["|']?s*[^>]*>([^>]+)</a>/i',$code,$arr); return array('name'=>$arr[2],'url'=>$arr[1]); } 方法二: /** * date 2015-07-24 **/ $site=substr($ur
-
php正则表达式取得内容所有链接的方法
本文实例讲述了php正则表达式取得内容所有链接的方法.分享给大家供大家参考.具体如下: 这里提供二款关于php正则链接的方法,他们可以取得内容所有链接并且保存到一个数组,当然也可以把链接全部替换. 方法一,代码如下: 复制代码 代码如下: function get_all_url($code){ preg_match_all('/<as+href=["|']?([^>"' ]+)["|']?s*[^>]*>([^>]+)<
-
JavaScript使用正则表达式获取全部分组内容的方法示例
本文实例讲述了JavaScript使用正则表达式获取全部分组内容的方法.分享给大家供大家参考,具体如下: 1. 需要使用正则表达式的exec 2. 需要循环 DEMO示例:(如下代码将输出 8 , 9,两个匹配到的分组内容) <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>JS正则demo</title>
-
JS使用正则表达式获取小括号、中括号及花括号内容的方法示例
本文实例讲述了JS使用正则表达式获取小括号.中括号及花括号内容的方法.分享给大家供大家参考,具体如下: JS 正则表达式 获取小括号 中括号 花括号内的内容 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>www.jb51.net JS获取括号内容</title> </head> <body> <script
-
java正则表达式获取大括号小括号内容并判断数字和小数亲测可用
获取大括号小括号内容 项目开发用到了,暂做个简单记录 private static String regex = "\\{([^}]*)\\}";//匹配大括号 private static String regexx = "\\(([^}]*)\\)";//匹配小括号 public static void main(String[] args) { String dakuohao = "{a+b}={c+d}>{d}"; Pattern
-
JS正则表达式获取分组内容的方法详解
支持多次匹配的方式: 复制代码 代码如下: var testStr = "now test001 test002"; var re = /test(\d+)/ig; var r = ""; while(r = re.exec(testStr)) { alert(r[0] + " " + r[1]); } 此外也可以用testStr.match(re),但是这样的话就不能有g的选项,而且只能得到第一个匹配. 另外备忘
-
使用C#正则表达式获取必应每日图片地址
微软的Bing搜索引擎首页每天都会提供了一些有趣的图片,下面使用正则表达式获取图片的地址,不管是在手机app还是在网站上都是很好的图片素材,而且每天更新,非常不错. 首先访问微软的API,该地址返回的是xml文本,获取xml文本后使用正则表达式匹配url节点中的内容,加上必应主页链接即可获得图片的真实网址.下面是获取网址的全部代码. string InfoUrl = "http://cn.bing.com/HPImageArchive.aspx?idx=0&n=1"; Http
-
java正则表达式获取指定HTML标签的指定属性值且替换的方法
实例如下: public static String repDomain(String source, String domain, String element, String attr) { String img = ""; Pattern p_image; Matcher m_image; String regEx_img = "<" + element + "[^<>]*?\\s" + attr + "=['\
-
Java使用正则表达式获取子文本的方法示例
本文实例讲述了Java使用正则表达式获取子文本的方法.分享给大家供大家参考,具体如下: 原来,group是针对()来说的,group(0)就是指的整个串,group(1) 指的是第一个括号里的东西,group(2)指的第二个括号里的东西. 最近学习正则表达式,发现Java中的一些术语与其他地方描述的有所差异.就这个问题卡了我半天,坑爹,写到博客,方便其他新学的朋友.比如Java正则表达式中的"组"概念与<正则表达式必知必会>一书中讲述的"子表达式"其实是
-
使用 js+正则表达式为关键词添加链接
要求把一段html脚本中的疾病名添加到疾病库的链接,只添加一次,要避开超链接或图片链接. 最初是用的 str.replace('糖尿病', '<a href=...>糖尿病</a>'); 结果找了半天,愣是没找到替换后的效果,原来是有个图片的title中包含糖尿病,被它捷足先登了. 因此要把<a>链接.<img>标签避开,但<p><div>等标签不用避开 上图: 复制代码 代码如下: s = "<a href='
随机推荐
- AngularJS路由删除#符号解决的办法
- Jquery中基本选择器用法实例详解
- 使用AngularJS创建自定义的过滤器的方法
- 纯js分页代码(简洁实用)
- 获取App.config配置文件中的参数值
- 用HTML/JS/PHP方式实现页面延时跳转的简单实例
- Python实现给文件添加内容及得到文件信息的方法
- JBuilderX+SQL Server开发hibernate
- 解决Mysql服务器启动时报错问题的方法
- jQuery实现数字加减效果汇总
- 不定义JQuery插件 不要说会JQuery
- 轻松学习C#的基础入门
- C#使用自定义算法对数组进行反转操作的方法
- Android RecyclerView线性布局详解(1)
- SpringBoot快速设置拦截器并实现权限验证的方法
- Spring Boot 定义系统启动任务的多种方式
- layui递归实现动态左侧菜单
- Python 实现一个手机号码获取妹子名字的功能
- 详解Ubuntu16.04安装Python3.7及其pip3并切换为默认版本
- Python时间差中seconds和total_seconds的区别详解
