正則表達式 取出img标签 保存于指定路径
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Net;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
namespace DloadPic
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string allstr = "<p dir=\"ltr\"><b>首先小编提醒广大车友们,下面应急方法都是有前提的:</b></p> <p dir=\"ltr\"> <b>1、你没有影响他人通过。没横在人行道上,没挡住了其它车辆。
</b></p> <p dir=\"ltr\"><b> 2、你没有逆向停车。
</b></p> <p dir=\"ltr\">";
allstr += "<img src=\"http://mmbiz.qpic.cn/mmbiz/1AduwlOjUXlYnmR39eBSwp50G5SKib3hPAjbkWnMibSyg3tu5e54TRF1hVyzwWr0BdEgQh9WwpwhkVQ5apeibMV1Q/640?wx_fmt=jpeg&wxfrom=5&tp=webp\"><br></p>
<p dir=\"ltr\"> 排除上面这两条后。假设交警正准备对你的停车行为进行";
allstr += "取证,<b>你仅仅须要迅速拉开车门,回到驾驶位置,正常驶离就能够了。</b>由于证据照片中,驾驶位置上有驾驶员的,是不能作为“机动车违反规则停放且驾驶人不在现场或在现场拒绝马上驶离。妨碍其它车辆、行人通行的”行为进行处罚的。
<br></p> <p dir=\"ltr\">";
allstr += "<img src=\"http://mmbiz.qpic.cn/mmbiz/1AduwlOjUXlYnmR39eBSwp50G5SKib3hPf1k0Vrx12u3EQqmQEA0icCWV10HzicL2ZkHLaF46D2HbRZryZK39XiaTA/640?
wx_fmt=jpeg&wxfrom=5&tp=webp\"><br></p> wx_fmt=jpeg&wxfrom=5&tp=webp\'><br></p">http://mmbiz.qpic.cn/mmbiz/1AduwlOjUXlYnmR39eBSwp50G5SKib3hPtD8FYz6gsOAK3GxHtN6hU9A2ibuHeFJYgXlm6Z1PkbgANiap04BNnueg/640? wx_fmt=jpeg&wxfrom=5&tp=webp\"><br></p
<p dir=\"ltr\"> <b>假设交警正准备给你的车贴条。你能够边打开手";
allstr += "机的录像功能(最好设置有快捷方式)边告诉交警你暂时停了一下如今立即离开。</b>假设交警仍然执意贴条,那么这段录像就能够作为申诉和复议证据。由于假设驾驶人在场,交警应该是指出违法行为,予以口头警告,令驾驶人立即驶离,驾驶人仅仅要高速驶离就可以。";
allstr += "</p> <p dir=\"ltr\"> <img src=\"
<p dir=\"ltr\"> 微群里一小伙伴在医院暂时等人";
allstr += ",我把车停在路边,降下玻璃等待,后视镜里能够看到一位交警由远及近的一辆一辆的贴条,贴到我的车时候发现驾驶位置有人。人家扭头就走了。
一说明,这位交警非常清楚驾驶员在现场不能处罚;二说明,口头警告对他来说没有不论什么意义。不如节约时间到路对面继续";
allstr += "贴条,更具有现实价值。
</p> <p dir=\"ltr\"> <img src=\"http://mmbiz.qpic.cn/mmbiz/1AduwlOjUXlYnmR39eBSwp50G5SKib3hPUh33wnDpYG4hhW1Gr9eCqvu9vc0IWluZaBnYTpTicjKvxctARiaRnliag/640?
wx_fmt=jpeg&wxfrom=5&tp=webp\"><br></p>
<p dir=\"ltr\"> 朋友";
allstr += "们。细致阅读交通法。学习交通法,遵守交通法是保证安全,避免处罚的最有效方法。争辩、吵架、送烟、生气、发泄都非常OUT!
效果不好,还解决不了问题。</p> <p dir=\"ltr\"> <img "; wxfrom=5&wx_fmt=jpeg&tp=webp\'><b><b></b></b></p">http://mmbiz.qpic.cn/mmbiz/DaFXKpOGEkylF3es0sMdI99dbBO3ia0c6olvkGrSoBiaDCiaPlI1kUgdvNrnchmdbg1hmIkvuVwa8OuXgnuLbXevQ/640?wxfrom=5&wx_fmt=jpeg&tp=webp\"><b><b></b></b></p
allstr += "src=\"http://mmbiz.qpic.cn/mmbiz/1AduwlOjUXlYnmR39eBSwp50G5SKib3hPgTUyALQPkTsIIF55ZumuuTcYbGL43lttgBDTFVlrficnbeMwK3O42nQ/640?wx_fmt=jpeg&wxfrom=5&tp=webp\"></p>
<p dir=\"ltr\"><img ";
allstr += "src=\"
Regex reg = new Regex("<img\\s+src=\"(.*?)\"");
// MatchCollection matches = reg.Matches(allstr);
allstr = reg.Replace(allstr,new MatchEvaluator(matchreplace));
string str = allstr;
}
public string matchreplace(Match m_match)
{
string m_return = m_match.Groups[0].Value;
string m_picurl = m_match.Groups[1].Value;
string temppartsrc = m_picurl.Substring(0, m_picurl.IndexOf('?'));
string temp = m_picurl.Substring(m_picurl.IndexOf("wx_fmt=") + 7);
string pictype = temp.Substring(0, temp.IndexOf("&"));
string src = temppartsrc + "." + pictype;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(src);
request.AllowAutoRedirect = true;
WebProxy proxy = new WebProxy();
proxy.BypassProxyOnLocal = true;
proxy.UseDefaultCredentials = true;
request.Proxy = proxy;
WebResponse response = request.GetResponse();
string virthpath = "";
using (Stream stream = response.GetResponseStream())
{
using (MemoryStream ms = new MemoryStream())
{
Byte[] buffer = new Byte[1024];
int current = 0;
while ((current = stream.Read(buffer, 0, buffer.Length)) != 0)
{
ms.Write(buffer, 0, current);
}
byte[] arry = ms.ToArray();
virthpath = "./image/" + DateTime.Now.ToString("yyyyMMddhhmmss") + "." + pictype;
string path = Server.MapPath(virthpath);
File.WriteAllBytes(path, arry);
}
}
m_return = m_return.Replace(m_picurl, virthpath);
return m_return;
}
}
}
正則表達式 取出img标签 保存于指定路径的更多相关文章
- 使用正則表達式的格式化与高亮显示json字符串
使用正則表達式的格式化与高亮显示json字符串 json字符串非常实用,有时候一些后台接口返回的信息是字符串格式的,可读性非常差,这个时候要是有个能够格式化并高亮显示json串的方法那就好多了,以下看 ...
- JavaScript正則表達式知识汇总
Js 正則表達式知识汇总 正則表達式: 1.什么是RegExp?RegExp是正則表達式的缩写.RegExp 对象用于规定在文本中检索的内容. 2.定义RegExp:var +变量名=new RegE ...
- Java正則表達式
近期工作中常常要用到正則表達式,不得不花点时间对其进行一定的学习. JDK中提供了2个类来支持正則表達式,各自是java.util.regex.Pattern和java.util.regex.Ma ...
- Python正則表達式:怎样使用正則表達式
正則表達式(简称RE)本质上能够看作一个小的.高度专业化的编程语言,在Python中能够通过re模块使用它.使用正則表達式,你须要为想要匹配的字符串集合指定一套规则,字符串集合能够包括英文句子.e-m ...
- 【iOS】正則表達式抓取网页数据制作小词典
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/xn4545945/article/details/37684127 应用程序不一定要自己去提供数据. ...
- 7.4 Javascript:表单验证-揭开正則表達式的面纱
用元字符匹配对应的字符类型 创建正則表達式有点像创建字符串字面量,仅仅只是正則表達式出如今一对"/"里 正則表達式中会用到一级元字符.用于连接字母与数字 "." ...
- 黑马程序猿————Java基础日常笔记---反射与正則表達式
------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 黑马程序猿----Java基础日常笔记---反射与正則表達式 1.1反射 反射的理解和作用: 首 ...
- iOS正則表達式(一)
什么是正則表達式? 正則表達式是对字符串操作的一种逻辑公式. 作用? 在iOS开发中我们通常使用正則表達式来匹配给定的字符串是否符合我们的业务逻辑,比方说用户注冊帐号仅仅能是手机号或者邮箱等.我们还能 ...
- jQuery源代码学习:经常使用正則表達式
转载自:http://nuysoft.iteye.com/blog/1217898 经常使用的数字正则(严格匹配) 正则 含义 ^[1-9]\d*$ 匹配正整数 ^-[1-9]\d*$ 匹配负整数 ^ ...
随机推荐
- Lucene.Net 2.3.1开发介绍 —— 三、索引(七)
原文:Lucene.Net 2.3.1开发介绍 -- 三.索引(七) 5.IndexWriter 索引这部分最后讲的是IndexWriter.如果说前面提到的都是数据的结构,那么IndexWriter ...
- mysql sql执行顺序
<pre name="code" class="html">mysql> explain select * from (select * fr ...
- 搭建实时同步data guard的最高可用-切换主备
搭建实时同步data guard的最高可用-切换主备 首先保证主库在归档模式下:错过N次了 准备二台机器(hostname gw hosts ech0)host-only [root@node1 ~] ...
- mysql update 有无索引对比
<pre name="code" class="html">mysql> desc ProductInfo; +--------------- ...
- oracle查询语句中case when的使用
case when语句语法如下: case when 表达式 then valueA else valueB end; 具体使用如下: select (case when a.colum ...
- [转]PHP 5.2~5.6 对照以及功能具体解释
[分享]PHP 5.2~5.6 对照以及功能具体解释 作者:流水理鱼wwek 来源:http://www.iamle.com/archives/1530.html 截至眼下(2014.2), PHP ...
- [.NET Framework学习笔记]一些概念
CIL:Common Intermediate Language 公共中间语言 VB.NET 和 C#.NET 编译以后都生成相同的中间语言,程序集就是由CIL组成的,CIL代码也叫做托管代码,因为C ...
- Windbg的gflags.exe -- Attach调试利器
有没有碰到过程序启动就因为异常直接crash?有没有碰到程序启动之后什么反应也没有?有没有碰到过程序启动之后去触发另一个进程失败?有没有碰到别人的程序调用了你的代码,出现问题以后,让你来调查,而你只有 ...
- OCA读书笔记(14) - 备份和恢复基本概念
备份恢复概念 如何判断数据库的一致性 在mount状态下,oracle如何判断数据库的一致性 scn:system change number,它是数据库时钟 如何查询当前系统的scn: select ...
- keil提示:missing ';' before 'XXX'但又找不到是哪里少了分号——已解决!
今天写一个51程序,keil在编译时总提示丢失了一个分号,但怎么都找不到是哪里丢失了分号,搞了一下午才解决问题,现在把经验在此分享,以求让他人不要犯同样的错误!提示信息为: LCD12864.H(20 ...