PHP_正则_获取图片所有属性

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

<?php
 
/*PHP正则提取图片img标记中的任意属性*/
$str = '<center><img src="/uploads/images/20100516000.jpg" height="120" width="120"><br />PHP正则提取或更改图片img标记中的任意属性</center>' ;
 
//1、取整个图片代码
preg_match( '/<\s*img\s+[^>]*?src\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i' , $str , $match );
echo $match [0];
 
//2、取width
preg_match( '/<img.+(width=\"?\d*\"?).+>/i' , $str , $match );
echo $match [1];
 
//3、取height
preg_match( '/<img.+(height=\"?\d*\"?).+>/i' , $str , $match );
echo $match [1];
 
//4、取src
preg_match( '/<img.+src=\"?(.+\.(jpg|gif|bmp|bnp|png))\"?.+>/i' , $str , $match );
echo $match [1];
 
/*PHP正则替换图片img标记中的任意属性*/
//1、将src="/uploads/images/20100516000.jpg"替换为src="/uploads/uc/images/20100516000.jpg")
print preg_replace( '/(<img.+src=\"?.+)(images\/)(.+\.(jpg|gif|bmp|bnp|png)\"?.+>)/i' ,"\${1}uc/images/\${3}", $str );
echo "<hr/>" ;
 
//2、将src="/uploads/images/20100516000.jpg"替换为src="/uploads/uc/images/20100516000.jpg",并省去宽和高
print preg_replace( '/(<img).+(src=\"?.+)images\/(.+\.(jpg|gif|bmp|bnp|png)\"?).+>/i' ,"\${1} \${2}uc/images/\${3}>", $str );
 
?>

转载于:https://my.oschina.net/miaowang/blog/304953

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/546218.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

matlab拔河比赛_拔河比赛

matlab拔河比赛Description: 描述&#xff1a; This is a standard interview problem to divide a set of number to two different set where both the subset contains same number of element and have a minimum difference of sum between them using backtracking. 这是…

别再问我 new 字符串创建了几个对象了!我来证明给你看!

如何证明 new String 创建了 N 个对象&#xff1f; 我想所有 Java 程序员都曾被这个 new String 的问题困扰过&#xff0c;这是一道高频的 Java 面试题&#xff0c;但可惜的是网上众说纷纭&#xff0c;竟然找不到标准的答案。有人说创建了 1 个对象&#xff0c;也有人说创建了…

C#使用Sockets操作FTP【转载】

using System; using System.Collections; using System.IO; using System.Net; using System.Net.Sockets; using System.Text; using System.Text.RegularExpressions;/* *解析drwxr-xr-x *第一位表示文件类型。d是目录文件&#xff0c;l是链接文件&#xff0c;-是普通文件&a…

scala 字符串占位符_如何在Scala中将带有换行符的字符串转换为字符串列表?

scala 字符串占位符A string is a sequence of characters and it can contain multiple lines, for this, the string uses the newline character \n. And, we can separate each newline into a string and store them as a list of strings. 字符串是字符序列&#xff0c;…

一款开源免费的SSH/SFTP客户端Electerm,同时支持Linux、MacOS、Windows

简介&#xff1a; Electerm是一个跨平台的Terminal/SSH/SFTP客户端工具&#xff0c;同时支持Linux、MacOS、Windows&#xff0c;基于electron/ssh2/node-pty/xterm/antd/useProxy等开源组件。 下载地址&#xff1a; 官网下载&#xff1a;https://electerm.html5beta.com/ Git…

用了自定义Banner后,SpringBoot瞬间变的高大上了...

Spring Boot 在启动的时候&#xff0c;我们或许想要把自己公司的 logo&#xff0c;或者是项目的 logo 放上去&#xff0c;我们可以试试本文的这些方法&#xff0c;可以让你快速制作一些 Spring Boot 项目启动时的彩蛋&#xff0c;以提高项目的辨识度&#xff0c;或者是纯碎为了…

菜鸟学前端--javascript基础

在学习过css相关的知识&#xff0c;有了前端工程师的一些基础知识。但要较好的掌握前端&#xff0c;必须要学习好javascript的知识。下面将从基本语法、变量、关键字、保留字、语句、函数、BOM等角度阐释。一、基本语法javacript作为一种面向对象的、脚本级的轻量语言&#xff…

Java LinkedList void add(int index,Object o)方法,带示例

LinkedList void add(int index&#xff0c;Object o)方法 (LinkedList void add(int index, Object o) method) This method is available in package java.util.Collection and here, Collection is an interface. 该方法在java.util.Collection包中可用&#xff0c;在这里&a…

如何生成高性能的短链接?

前言今天&#xff0c;我们来谈谈如何设计一个高性能短链系统&#xff0c;短链系统设计看起来很简单&#xff0c;但每个点都能展开很多知识点&#xff0c;也是在面试中非常适合考察侯选人的一道设计题&#xff0c;本文将会结合我们生产上稳定运行两年之久的高性能短链系统给大家…

iOS 技术官方 QA

2019独角兽企业重金招聘Python工程师标准>>> Q: 在静态库中使用catagory分类运行时提示"selector not recognized" A: 需要配置下project/target属性 Q: 在iOS7以后怎么截图 A: iOS7 提供了相关API实现截图功能&#xff0c;如:-drawViewHierarchyInRect:a…

Python日历模块| weekheader()方法与示例

Python calendar.weekheader()方法 (Python calendar.weekheader() Method) weekheader() method is an inbuilt method of the calendar module in Python. It works on simple text calendars and returns a header containing the abbreviated names of the weekday. weekhe…

IPsec IKEv2(HCIP)

目录 一、IKE介绍 1、IKE介绍 2、IKE的主要作用 3、IKE与IPsec关系 二、IKE基础内容 1、IEK的身份认证方法 数据源认证 预共享密钥PSK 数字证书 数字信封 EAP(IKEv2支持) 数字证书CA如何实现身份认证? 2、IKEv1介绍 IKEv1介绍 IKEv1第一阶段介绍 IKEv1第二阶段…

9个小技巧让你的 if else看起来更优雅

if else 是我们写代码时&#xff0c;使用频率最高的关键词之一&#xff0c;然而有时过多的 if else 会让我们感到脑壳疼&#xff0c;例如下面这个伪代码&#xff1a; 是不是很奔溃&#xff1f;虽然他是伪代码&#xff0c;并且看起来也很夸张&#xff0c;但在现实中&#xff0c;…

poj 3254 状压dp

E -Corn FieldsTime Limit:2000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64u SubmitStatus Practice POJ 3254Description Farmer John has purchased a lush new rectangular pasture composed of M by N (1 ≤ M ≤ 12; 1 ≤ N ≤ 12) square parcels…

第一弹!安利10个让你爽到爆的IDEA必备插件!

大家好&#xff0c;此篇文章中我会介绍10个非常不错的IDEA插件以及它们常见功能的使用方法。这一期内容搞 Gif 动态图花了很久&#xff0c;很多Gif图片上传到微信还提示过大&#xff0c;所以很多地方重新又录制了一遍Gif图。概览&#xff1a;IDE Features Trainer—IDEA交互式教…

C程序对整数中设置为1的位数进行计数

Problem statement: Write a C program to count number of bits set to 1 in an Integer. 问题陈述&#xff1a;编写一个C程序来计算Integer中设置为1的位数 。 Solution: We can use bitwise operator here to solve the problem. 解决方案&#xff1a;我们可以在这里使用按…

String性能提升10倍的几个方法!(源码+原理分析)

这是我的第 54 篇原创文章。String 类型是我们使用最频繁的数据类型&#xff0c;没有之一。那么提高 String 的运行效率&#xff0c;无疑是提升程序性能的最佳手段。我们本文将从 String 的源码入手&#xff0c;一步步带你实现字符串优化的小目标。不但教你如何有效的使用字符串…

日期getTime()方法以及JavaScript中的示例

JavaScript Date getTime()方法 (JavaScript Date getTime() method) getTime() method is a Dates class method and it is used to get the time in milliseconds from 1st January 1970. getTime()方法是Date的类方法&#xff0c;用于获取从1970年1月1 日开始的时间(以毫秒为…

制作openstack-centos镜像

一、准备工作我在计算节点上面制作镜像&#xff0c;计算节点为centos6.3 64位系统1.安装底层支持包yum groupinstall Virtualization "Virtualization Client"yum install libvirt2.下载或从本地上传进去一个完整的系统镜像mkdir /openstack-p_w_picpathcd /openstac…

一文彻底搞懂Java中的值传递和引用传递!

关于Java中方法间的参数传递到底是怎样的、为什么很多人说Java只有值传递等问题&#xff0c;一直困惑着很多人&#xff0c;甚至我在面试的时候问过很多有丰富经验的开发者&#xff0c;他们也很难解释的很清楚。我很久也写过一篇文章&#xff0c;我当时认为我把这件事说清楚了&a…