正则获取图片地址 链接地址

弥耳道没有悲伤

弥耳道没有悲伤

2016-02-19 10:31

在这个颜值当道,屌丝闪边的时代,拼不过颜值拼内涵,只有知识丰富才能提升一个人的内在气质和修养,所谓人丑就要多学习,今天图老师给大家分享正则获取图片地址 链接地址,希望可以对大家能有小小的帮助。

代码如下:

reg = /[img|href][^]*srcs*=s*('|")?([^'"]*)1([^])*/ig


正则获取图片地址

一、问题:

采集的过程中遇到一个问题:从数据库里读出来的图片没有正常显示,分析后发现是数据库里的图片以网站根目录为相对路径方式存储,图片地址如:http://img.warting.com/allimg/090403/012F31N9-1.jpg,原来做的读取图片是以http://开关的URL绝对图片获取,所以采集中出现以根目录开始的图片地址采集失败。

二、解决方案:

分析HTML代码,显示图片定用img标签,写一个正则式获取img里的图片地址再加网站的网站转换为URL的绝对地址,接着的事情交给后面的代码(远程图片获取到本地)。

1) 完善解决方法,以“img”开始写正规,但这个正式式比较难写要考虑“img”的属性、空格、多空格、单引号、双引号、不规范的属性引用(如单引号或双引号括起的属性值)等等。
2)应急解决方法,只要考虑“src=”属性开始的正则式,但这种方式存在不完善的地方,只要有“src=”出现在的都会被替换,出现“src="的可能性有:javascript,文本里出现的"src"等。但这些是比较少的,再加上一个图片格式做正则限定,出现被误替换的概率会更少。

三、实现代码:

考虑到第一种方法的难度暂时没有写,这里第二种应急解决方法实现(实现涉及的正则式内容这里不做讲解和分析,正则式的知识内容请google或baidu ^v^):

代码如下:

?php
//测试样式,考虑多种情况下的正则式。
$body = HTML
P style="text-align:center"1img width="60" height="90px" src='http://www.chongwen.comhttp://img.warting.com/allimg/090403/012F35310-0.jpg'/P
P style="text-align:center"2img src='http://img.warting.com/allimg/090403/012F31N9-1.jpg'/P
P style="text-align:center"3img src='http://img.warting.com/allimg/090403/012F3D13-2.jpg'style="width:100px" /P
P style="text-align:center"4img width="60" height="90px" src= "http://www.chongwen.comhttp://img.warting.com/allimg/090403/012F35310-0.jpg"/P
P style="text-align:center"5img src=" http://img.warting.com/allimg/090403/012F31N9-1.jpg "/P
P style="text-align:center"6img src= " http://img.warting.com/allimg/090403/012F31N9-1.jpg "/P
P style="text-align:center"7img src= http://img.warting.com/allimg/090403/012F3D13-2.jpg style="width:100px" /P
HTML;

//网站的地址
$str='src=/'http://www.chongwen.com/';
$body=preg_replace('/src/s*?=/s*?[/"|/']?/s*?//(.+?/.(?:jpg|gif|png|bmp))(/"|/'|/s)*?/s*?/is',"$str$1 '",$body);
echo $body;
?

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)
展开更多 50%)
分享

猜你喜欢

正则获取图片地址 链接地址

Web开发
正则获取图片地址 链接地址

IE右键中添加“复制图片地址”和“复制链接地址”

浏览器
IE右键中添加“复制图片地址”和“复制链接地址”

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

在IE里快速复制链接地址和复制图片地址

浏览器
在IE里快速复制链接地址和复制图片地址

正则表达式,提取网页中的链接地址

Web开发
正则表达式,提取网页中的链接地址

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

用正则解析图片地址,并利用XMLHTTP组件将其保存

ASP
用正则解析图片地址,并利用XMLHTTP组件将其保存

如何判断图片地址是否失效

Web开发
如何判断图片地址是否失效

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

struts2中实现多个文件同时上传代码

struts2中实现多个文件同时上传代码

爱尔兰 很所人的向往 - QQ图案分组

爱尔兰 很所人的向往 - QQ图案分组
下拉加载更多内容 ↓