正則表達式 取出img标签 保存于指定路径

时间:2022-08-30 13:16:23

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>
<p dir=\"ltr\">  <b>假设交警正准备给你的车贴条。你能够边打开手";

            allstr += "机的录像功能(最好设置有快捷方式)边告诉交警你暂时停了一下如今立即离开。</b>假设交警仍然执意贴条,那么这段录像就能够作为申诉和复议证据。由于假设驾驶人在场,交警应该是指出违法行为,予以口头警告,令驾驶人立即驶离,驾驶人仅仅要高速驶离就可以。";

            allstr += "</p> <p dir=\"ltr\">  <img src=\"

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\">  微群里一小伙伴在医院暂时等人";

            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 ";

            allstr += "src=\"http://mmbiz.qpic.cn/mmbiz/1AduwlOjUXlYnmR39eBSwp50G5SKib3hPgTUyALQPkTsIIF55ZumuuTcYbGL43lttgBDTFVlrficnbeMwK3O42nQ/640?wx_fmt=jpeg&wxfrom=5&tp=webp\"></p>
<p dir=\"ltr\"><img ";

            allstr += "src=\"

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

>";

            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标签 保存于指定路径的更多相关文章

  1. 使用正則表達式的格式化与高亮显示json字符串

    使用正則表達式的格式化与高亮显示json字符串 json字符串非常实用,有时候一些后台接口返回的信息是字符串格式的,可读性非常差,这个时候要是有个能够格式化并高亮显示json串的方法那就好多了,以下看 ...

  2. JavaScript正則表達式知识汇总

    Js 正則表達式知识汇总 正則表達式: 1.什么是RegExp?RegExp是正則表達式的缩写.RegExp 对象用于规定在文本中检索的内容. 2.定义RegExp:var +变量名=new RegE ...

  3. Java正則表達式

    近期工作中常常要用到正則表達式,不得不花点时间对其进行一定的学习.   JDK中提供了2个类来支持正則表達式,各自是java.util.regex.Pattern和java.util.regex.Ma ...

  4. Python正則表達式:怎样使用正則表達式

    正則表達式(简称RE)本质上能够看作一个小的.高度专业化的编程语言,在Python中能够通过re模块使用它.使用正則表達式,你须要为想要匹配的字符串集合指定一套规则,字符串集合能够包括英文句子.e-m ...

  5. 【iOS】正則表達式抓取网页数据制作小词典

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/xn4545945/article/details/37684127 应用程序不一定要自己去提供数据. ...

  6. 7&period;4 Javascript&colon;表单验证-揭开正則表達式的面纱

    用元字符匹配对应的字符类型 创建正則表達式有点像创建字符串字面量,仅仅只是正則表達式出如今一对"/"里 正則表達式中会用到一级元字符.用于连接字母与数字 "." ...

  7. 黑马程序猿————Java基础日常笔记---反射与正則表達式

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 黑马程序猿----Java基础日常笔记---反射与正則表達式 1.1反射 反射的理解和作用: 首 ...

  8. iOS正則表達式&lpar;一&rpar;

    什么是正則表達式? 正則表達式是对字符串操作的一种逻辑公式. 作用? 在iOS开发中我们通常使用正則表達式来匹配给定的字符串是否符合我们的业务逻辑,比方说用户注冊帐号仅仅能是手机号或者邮箱等.我们还能 ...

  9. jQuery源代码学习:经常使用正則表達式

    转载自:http://nuysoft.iteye.com/blog/1217898 经常使用的数字正则(严格匹配) 正则 含义 ^[1-9]\d*$ 匹配正整数 ^-[1-9]\d*$ 匹配负整数 ^ ...

随机推荐

  1. 执行计划中常见index访问方式&lpar;转&rpar;

    近期有朋友对于单个表上的index各种情况比较模糊,这里对于单个表上,单个index出现的大多数情况进行了总结性测试,给出了测试结果,至于为什么出现这样的试验结果未做过多解释,给读者留下思考的空间.本 ...

  2. POJ2096 概率dp 入门

    http://acm.hust.edu.cn/vjudge/contest/view.action?cid=118282#problem/B 挺好的一个题目: 不过刚开始嘛,看别人题解长知识.这个人写 ...

  3. 【安富莱专题教程第3期】开发板搭建Web服务器,利用花生壳让电脑和手机可以外网远程监控

    说明:1.  开发板Web服务器的设计可以看我们之前发布的史诗级网络教程:链接.2.  需要复杂些的Web设计模板,可以使用我们V6开发板发布的综合Demo:链接.3.  教程中使用的是花生壳免费版, ...

  4. LwIP Application Developers Manual2---Protocols概览

    1.前言 本文是对LwIP Application Developers Manual的翻译 lwIP是模块化的并支持广泛的协议,这些大部分协议可以被裁减从而减小代码的尺寸 2.协议概览 链路层和网络 ...

  5. xpath &comma;css

    https://docs.scrapy.org/en/latest/intro/tutorial.html xpath @选择属性  .当前目录下选择 //任意路径选择 /bookstore/book ...

  6. 表达式括号匹配&lpar;stack&period;cpp&rpar;

    [问题描述]        假设一个表达式有英文字母(小写).运算符(+,—,*,/)和左右小(圆)括号构成,以“@”作为表达式的结束符.请编写一个程序检查表达式中的左右圆括号是否匹配,若匹配,则返回 ...

  7. 什么是HBase(六)性能调优

    硬件层面 内存要大,最好是ECC(Error Checking and Correcting),实现内存的动态纠错:CPU要多路(每个路彼此隔离)每个路一个CPU,每个cpu上面一般都是2~12核. ...

  8. Create Index using NEST &period;NET

    Hello Guys, I have a doubt about how create index using NEST .NET. I created every fields in my C# m ...

  9. 观察者模式和java委托

    观察者模式与java委托 所谓观察者模式,指的某个状态信息的改变,会影响其他一系列的操作,这时就可以将这些操作抽象化,同时创建一个类统一的管理和执行这些操作.把这些抽象出来的操作称为观察者类,而管理这 ...

  10. Atitit&period;注解and属性解析&lpar;2&rpar;---------语法分析 生成AST attilax总结 java &period;net

    Atitit.注解and属性解析(2)---------语法分析 生成AST  attilax总结  java .net 1. 应用场景:::因为要使用ui化的注解 1 2. 使用解释器方式来实现生成 ...