`

C# 正则 获取 Img Src路径

阅读更多
string  str = "<form id=\"form1\" runat=\"server\"><div><p><img src=\"img/01300000278409123123126754611.jpg\" alt=\"\" /></p><p><img src=\"img/16583711.jpg\" alt=\"\" /></p><p><img src=\"img/2_091208000854_6.jpg\" alt=\"\" /></p></div></form>";
for (int j = 0; j < GetHtmlImageUrlList(str).Length; j++)
                        {
                             //获取图片路径字符串
                             string img = GetHtmlImageUrlList(str)[i];
                             //删除服务器上的图片
                             string filepath = Server.MapPath(img);
                             FileInfo file = new FileInfo(filepath);
                             if (file.Exists)
                             {
                                 file.Delete();
                             }
                        }



/// <summary>
        /// 获取Img的路径
        /// </summary>
        /// <param name="htmlText">Html字符串文本</param>
        /// <returns>以数组形式返回图片路径</returns>
        public static string[] GetHtmlImageUrlList(string htmlText)
        {
            Regex regImg = new Regex(@"<img\b[^<>]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?<imgUrl>[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>", RegexOptions.IgnoreCase);
            //新建一个matches的MatchCollection对象 保存 匹配对象个数(img标签)
            MatchCollection matches = regImg.Matches(htmlText);
            int i = 0;
            string[] sUrlList = new string[matches.Count];
            //遍历所有的img标签对象
            foreach (Match match in matches)
            {
                //获取所有Img的路径src,并保存到数组中
                sUrlList[i++] = match.Groups["imgUrl"].Value;
            }
            return sUrlList;
        }
分享到:
评论

相关推荐

    C#正则提取中文

    在C#语言中,正则表达式的应用非常广泛,尤其在处理中文字符时,其灵活性和效率更是得到了充分的体现。下面将深入探讨如何使用C#的正则表达式来提取中文字符,这不仅适用于简单的文本处理,也广泛应用于网页抓取、...

    C#正则表达式集合C# 正则表达式 集合C# 正则表达式 集合C# 正则表达式 集合

    根据给定的信息,本文将详细解释C#中的正则表达式及其应用场景,特别是结合所提供的示例来阐述如何在C#程序设计中运用这些表达式。 ### C#与正则表达式 C#是一种广泛使用的面向对象编程语言,它支持丰富的功能,...

    C#正则测试器

    标题中的"C#正则测试器"是一个专门针对C#编程语言设计的工具,用于帮助开发者测试和验证他们的正则表达式。在软件开发过程中,正则表达式是用于处理字符串的强大工具,它能够进行复杂的模式匹配和数据提取。C#语言...

    正则表达式测试工具C#版(src)

    本项目提供了一个C#编写的正则表达式测试工具,包含完整的源代码,可以帮助开发者调试和测试他们的正则表达式,支持查找和替换功能,并能直观地显示匹配结果。 1. **C#中的正则表达式基础** - `System.Text....

    C#正则表达式文本框验证:只能输入整数和带两位小数的小数

    一个WinForm程序用以测试C#正则表达式文本框验证:只能输入整数和带两位小数的小数。如暂时无法下载,可以查看本人CSDN博客里相应文章中关于该程序的思路。能力有限,仅供交流学习,请多多指教。

    c# 正则表达式生成工具 源代码

    本项目提供了一个C#编写的正则表达式生成工具的源代码,对于学习和理解C#中的正则表达式操作具有很高的价值。 源代码中的关键部分可能包括以下几个方面: 1. **Regex类**:C#中的`System.Text.RegularExpressions`...

    C#正则表达式大全, 判断字符串是否为正整数,中文,英文.....

    C# 正则表达式大全 正则表达式是指用来描述字符串模式的表达式,通过使用正则表达式,我们可以轻松地实现字符串的匹配、验证、提取和替换等操作。在 C# 中,我们可以使用 System.Text.RegularExpressions 命名空间...

    C#正则表达示练习器

    C#正则表达式是.NET框架中用于处理文本模式匹配的重要工具,它允许开发者通过预定义的模式来搜索、替换或提取字符串中的特定部分。在编程中,正则表达式常用于验证用户输入、数据清洗、日志分析等多个场景。这款"C#...

    c#正则表达式汇总

    c#正则表达式汇总,所有情况都有的哦。

    C# 正则表达式 类库(附源码)

    C# 正则表大之 类库 (附源码) 封装了常用的所有正则函数,让使用起来非常方便。 实际项目两年的使用测试,很稳定。

    C#正则表达式语法大全

    C#正则表达式语法大全涵盖了在C#编程语言中使用正则表达式进行文本匹配、提取、替换等操作所必需的语法知识。正则表达式是一种强大的文本处理工具,它可以描述字符串的模式,让我们能够执行复杂的搜索和匹配操作。 ...

    正则表达式 java正则表达式 c#正则表达式,

    ### 正则表达式在Java、C#及跨语言应用详解 #### 1. 正则表达式基础 正则表达式(Regular Expression)是一种强大的文本处理工具,它能够帮助我们在字符串中查找、替换和提取特定的模式。无论是Java还是C#,正则...

    一个调试c#正则表达式的工具

    这个工具可以调试c#的正则表达式,和c#的一样,一个不错的调试c#正则表达式的好工具

    C#正则表达式提取网页数据

    本主题聚焦于利用C#的正则表达式功能来从网页中提取数据,并将其存储到SQL Server 2005数据库。下面将详细阐述这一过程中的关键知识点。 一、正则表达式(Regular Expression) 正则表达式是一种强大的文本处理工具...

    C#正则表达式完全手册

    C#正则表达式是.NET框架中用于在输入文本中匹配特定模式的一套工具。正则表达式由一个或多个字符文字、操作符或构造组成,可用于定义复杂的文本匹配规则。该文档作为一个手册,提供了快速参考的各个部分,覆盖了字符...

    C#正则表达式的使用

    C#正则表达式的使用,希望大家可以学习学习! [C#] bool IsValidEmail(string strIn) { // Return true if strIn is in valid e-mail format. return Regex.IsMatch(strIn, @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3...

    c#正则表达式调试工具 源码和exe

    C#正则表达式调试工具是一款专为C#开发者设计的实用软件,它可以帮助程序员在编写和测试正则表达式时进行调试和分析。这款工具提供了源码和可执行文件(exe),使得用户不仅可以直接使用,也能深入学习其内部工作...

    C#正则表达式 和 测试工具

    在处理文本数据和模式匹配时,C#中的正则表达式(Regular Expressions)是一个强大的工具。正则表达式是一种特殊的字符串模式,用于搜索、替换或提取符合特定规则的文本。它们在数据验证、文本解析、数据提取等多个...

    c#正则表达式截取指定字符串之间的字符串。类文件直接用就可以了~

    给写了2个方法,一个是直接截取单个需要的字符串,比如字符串string a="ab123456",我只需要提取3,那么就是单独截取就可以了,从2开始到4结束就行。 第二个是把所有的符合条件的字符串都截取出来,提取出来,比如...

Global site tag (gtag.js) - Google Analytics