很多站长朋友们都不太清楚php获取img地址代码,今天小编就来给大家整理php获取img地址代码,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php 正则 中的 href 和img 地址 2、 求教php正则高手。php正则获取html内容中的所有img路径及名称,替换img的路径 3、 PHP字符串提取一段文字中的img代码 4、 请问怎样用php 正则表达式取设置宽和高的[/img]标签里面的图片地址 php 正则 中的 href 和img 地址针对给定的标本数据,编写如下正则供参考:
1、提取 jpg 地址链接
"(http://.*?\.jpg)"
2、提取 a href 或是 img src 标签中的 jpg 地址链接
[href|src]="(http://.*?\.jpg)"
3、提取<a></a>标签中的 jpg 地址链接
(<a.*)(http://.*\.jpg)(".*")(http:/.*\.jpg)(".*)</a>
求教php正则高手。php正则获取html内容中的所有img路径及名称,替换img的路径正则表达式:(?<=<img src=\")(/.+/)(.+?\.(gif|jpg|png))(?=\">)
分别取第0和第2捕获组的数据,就是你要的获取/abc/efg/qwe/1.gif和获取1.gif的数据
替换你可以用上面的正则表达式:(?<=<img src=\")(/.+/)(.+?\.(gif|jpg|png))(?=\">)
替换成:style/images/$2
我给你一个用Java实现的上述正则表达式的例子.
import?java.util.regex.Matcher;
import?java.util.regex.Pattern;
public?class?CC?{
?public?static?void?main(String[]?args)?{
??String?s="<img?src=\"/abc/efg/qwe/1.gif\">";
??String?regex="(?<=<img?src=\")(/.+/)(.+?\\.(gif|jpg|png))(?=\">)";
??Pattern?p=Pattern测试数据pile(regex);
??Matcher?m=p.matcher(s);
??while(m.find()){
???System.out.println(m.group());
???System.out.println(m.group(2));
??}
??System.out.println(s.replaceAll("(?<=<img?src=\")(/.+/)(.+?\\.(gif|jpg|png))(?=\">)",?"style/images/$2"));
?}
}
运行结果:
/abc/efg/qwe/1.gif
1.gif
<img src="/data/upload/help/202303/13/3c36b1ab96386656257cbf308edafa82.gif">
PHP字符串提取一段文字中的img代码<?php
$str='“欢迎查看美女图片<img src="/data/upload/help/202303/13/ae375ac817916c65f918db6e8aadbb1e.jpg" width="450" height="210" />哈哈!<img src="/data/upload/help/202303/13/ae375ac817916c65f918db6e8aadbb1e.jpg" width="450" height="210" />”';
echo $str;
preg_match_all('/<img.*\/>/iUs', $str, $out);
print_r($out);
$img=$out[0][0];
echo $img;
?>
运行这段代码,看看是不是你想要的~
请问怎样用php 正则表达式取设置宽和高的[/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_dump($arr);
运行结果如下
php?test.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_dump(preg_match_all_to_array($re,$txt));
function?preg_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获取img地址代码的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php获取img地址代码 php获取当前ip地址的详细内容...