导航:首页 > 编程语言 > php正则提取图片

php正则提取图片

发布时间:2025-07-12 15:58:19

‘壹’ 请问怎样用php 正则表达式取设置宽和高的[img][/img]标签里面的图片地址

用php给你运行了一个

$txt='[img=442,296]图片地址1[/img]
[img=300,188]图片地址2[/img]
[img=120,206]图片地址3[/img]';
$re='/[img=(d+,d+)](S+?)[/img]/';//这里修改下,加上一个?防止以单行文本导致的定界符不准问题
$arr=[];
preg_match_all($re,$txt,$arr);
var_mp($arr);

运行结果如下

phptest.php
array(3){
[0]=>
array(3){
[0]=>
string(32)"[img=442,296]图片地址1[/img]"
[1]=>
string(32)"[img=300,188]图片地址2[/img]"
[2]=>
string(32)"[img=120,206]图片地址3[/img]"
}
[1]=>
array(3){
[0]=>
string(7)"442,296"
[1]=>
string(7)"300,188"
[2]=>
string(7)"120,206"
}
[2]=>
array(3){
[0]=>
string(13)"图片地址1"
[1]=>
string(13)"图片地址2"
[2]=>
string(13)"图片地址3"
}
}

//增加一个矩阵转换
$txt='[img=442,296]图片地址1[/img][img=300,188]图片地址2[/img][img=120,206]图片地址3[/img][img=120,206]wwww[/img]';
$re='/[img=(d+,d+)](S+?)[/img]/';

var_mp(preg_match_all_to_array($re,$txt));

functionpreg_match_all_to_array($re,$txt)
{
$arrs=[];
preg_match_all($re,$txt,$arrs);
if($arrs===false)
return$arrs;
//移除到总匹配数据
array_shift($arrs);
$return=[];
//获取矩阵纵长
$arrs_longitudinal=count($arrs);
for($i=0;$i<$arrs_longitudinal;$i++){
//获取单列横长
$arrs_transverse=count($arrs[$i]);
for($j=0;$j<$arrs_transverse;$j++){
$return[$j][$i]=$arrs[$i][$j];
unset($arrs[$i][$j]);
}
unset($arrs[$i]);
}
return$return;
}

‘贰’ php preg_match_all()函数怎么匹配文章中的所有图片链接并打印出来

<?php
$Html=@file_get_contents('5.html');
$Html=preg_replace('/s{2,}| /i','',$Html);//过滤掉换行和2个以上的空格
preg_match_all('/<imgs+[^>]*srcs?=s?['|"]([^'|"]*)['|"]/i',$Html,$Image);
print_r($Image);

图片,通常情况下,无论有什么属性,他最基本的有2点,<img开头, 有src属性!

那么只要匹配到这2个特征,其他的就别管他,这样,所有图片就出来了

‘叁’ PHP正则表达式给图片添加超链接,href的值为图片src的值

PHP的不会写

匹配的正则表达式:

<imgs*src="([^"]+)"(s*title[sS]+?>)

匹配的结果为:

$1为1.jpg

$2为title="123.jpg"alt="论坛活动"/>


替换的时候使用1与2即可

替换字符串:

<ahref="1"><imgsrc="/url.html?1"2</a>

‘肆’ HTML中img标签的src填本地绝对路径无法显示

在php中,可以通过正则表达式来获得img标签的src内容,下派培面分享下php如何获取html标签img的src内颂桥容。

1、首先新建一个php文件,命名为test.php,在test.php文件中,将img图片尘樱唯标签存在$html变量中。

‘伍’ 求php中正则表达式从html代码中获取图片路径

<?php
$test = '<p>444<img height="768" width="1024" alt="" src="/uploadfiles/28/Tree.jpg" /></p>
<p>444<img height="768" width="1024" alt="" src="/uploadfiles/sf/Tree.jpg" /></p>
fsdafasdfasdfasdf
<p>444<img height="768" width="1024" alt="" src="/uploadfiles/28/elm.jpg" /></p>

sdfasdfasdf<p>
<p>444<img height="768" width="1024" alt="" src="/uploadfiles/28/maple.jpg" /></p>

sdf32414撒旦发是否
<p>444<img height="768" width="1024" alt="" src="/uploadfiles/40/Tree.jpg" /></p>';

preg_match_all("/<p>.*src=\"([^^]*?)\".*<\/p>/i",$test,$match);
print_r($match[1]);
?>

这样应该可以,我试的多行的,中间还夹杂一些字符,没什么问题,呵呵

阅读全文

与php正则提取图片相关的资料

热点内容
pdf怎样转换成word格式 浏览:673
怎么查找解压文件在哪里 浏览:852
德语小说pdf 浏览:125
陕西联通dns服务器地址 浏览:939
js表格即时编译 浏览:304
51单片机串口拓展 浏览:307
重装系统后加密图片损坏 浏览:465
电脑怎么放大缩小app窗口 浏览:526
教育十APP学校怎么更改 浏览:823
空调外机压缩机热保护 浏览:756
winlinux双系统卸载 浏览:241
如何对安卓应用反编译 浏览:412
鲲鹏pc服务器是什么 浏览:574
一级防震梁箍筋加密 浏览:930
linuxxampp64位 浏览:730
西安哪个app能买到东西 浏览:459
eps命令键 浏览:40
塑料文件夹的尺寸 浏览:212
君威压缩机电磁阀 浏览:947
安卓6手机为什么不能用app 浏览:862