首页 > 编程语言 >转:C# 正则表达式提取指定文本内的内容

转:C# 正则表达式提取指定文本内的内容

时间:2024-10-10 08:50:41浏览次数:1  
标签:Regex 提取 string C# 正则表达式 字符串 resList 文本

C# 正则表达式提取指定文本内的内容_c#正则表达式提取文本-CSDN博客

/// <summary>
        /// 截取字符串中开始和结束字符串中间的字符串
        /// </summary>
        /// <param name="source">源字符串</param>
        /// <param name="startStr">开始字符串</param>
        /// <param name="endStr">结束字符串</param>
        /// <returns>中间字符串</returns>
        public string SubstringSingle(string source, string startStr, string endStr)
        {
            Regex rg = new Regex("(?<=(" + startStr + "))[.\\s\\S]*?(?=(" + endStr + "))", RegexOptions.Multiline | RegexOptions.Singleline);
            return rg.Match(source).Value;
        }
 
        /// <summary>
        /// (批量)截取字符串中开始和结束字符串中间的字符串
        /// </summary>
        /// <param name="source">源字符串</param>
        /// <param name="startStr">开始字符串</param>
        /// <param name="endStr">结束字符串</param>
        /// <returns>中间字符串</returns>
        public List<string> SubstringMultiple(string source, string startStr, string endStr)
        {
            Regex rg = new Regex("(?<=(" + startStr + "))[.\\s\\S]*?(?=(" + endStr + "))", RegexOptions.Multiline | RegexOptions.Singleline);
            
            MatchCollection matches = rg.Matches(source);
 
            List<string> resList=new List<string>();
 
            foreach (Match item in matches)
                resList.Add(item.Value);
 
            return resList;
        }

 

以上可以从html中代码中提取一些数据,如从table中取表数据等。  

 

标签:Regex,提取,string,C#,正则表达式,字符串,resList,文本
From: https://www.cnblogs.com/81/p/18455555

相关文章

  • 【K8s】专题十四(1):Kubernetes 安全机制之 RBAC
    本文内容均来自个人笔记并重新梳理,如有错误欢迎指正!如果对您有帮助,烦请点赞、关注、转发、订阅专栏!专栏订阅入口| 精选文章 | Kubernetes |Docker|Linux |羊毛资源 | 工具推荐 |往期精彩文章【Docker】(全网首发)KylinV10下MySQL容器内存占用异常的解决......
  • 浏览器指纹修改指南2024 - 命令行控制SpeechVoice指纹(七)
    引言在前几篇文章中,我们深入探讨了如何通过修改Chromium源码来定制化SpeechVoice,从而实现浏览器指纹的修改。这些方法虽然有效,但对于一些用户来说,直接修改源码可能显得过于复杂和繁琐。为了简化这一过程,本篇文章将介绍如何通过命令行来自定义浏览器指纹。通过命令行工具,您可......
  • 浏览器指纹修改指南2024 - 修改SpeechVoice指纹(六)
    1.引言在前两篇文章中,我们详细介绍了SpeechVoice在浏览器指纹中的重要性,并通过分析Chromium源码,找到了与SpeechVoice相关的关键实现文件和函数。通过这些分析,我们已经为后续的源码修改工作打下了坚实的基础。在本篇文章中,我们将正式进入源码修改的实战环节。我们将一步步指导......
  • (2024已成功)pytorch安装初学者踩过的坑
    pytorch的教学视频年头已久,而软件的版本都更新很快,于是很容易配置环境出错。这里博主分享自己踩到的坑一开始配置环境便是分水岭的第一步,大家一定要自己上手做一遍,毕竟配置环境是python学习中永远绕不开的问题了!一、没有下cuda导致pytorch无法下载gpu版本照着小土堆的视频在......
  • YOLO11实战:新颖的多尺度卷积注意力(MSCA)加在网络不同位置的涨点情况 | 创新点如何在自
    ......
  • UpdatePack7R2 24.10.10 参数详细说明及示例
    UpdatePack7R224.10.10使用示例以下是一些使用UpdatePack7R2的示例命令:自动安装所有更新,包括InternetExplorer11,并重启计算机:CopyCodeUpdatePack7R2.exe/ie11/silent/reboot隐藏所有现有产品的更新,不更改InternetExplorer的版本,并且不重启计算机:CopyCode......
  • 「模拟赛」A 层多校联训 4(卖品:CTH)
    双倒一啦!感觉这次最大的错误就是没看T2。(本质原因还是时间浪费的太多了)赛时记录在闲话啦accoder多校比赛链接02表示法唐诗题!考高精的人都\(**\),输出深度优先搜索解决。高精乘2、高精减。子串的子串官方题解写的不好,放一下Ratio的好吃题解:意思就是:\(ans_{l,r-1}\)......
  • 第2天:熟悉Android Studio补充材料——`MainActivity.kt`解读
    下面是对“第2天:熟悉AndroidStudio”该文学习的更深层次的补充材料,对MainActivity.kt文件的理解。下面对MainActivity.kt文件中每一行进行详细解释:packagecom.example.helloworldappimportandroid.os.Bundleimportandroidx.activity.enableEdgeToEdgeimporta......
  • 初始vector——数组的高级产物
    前言:C++标准模板库(STL)是现代C++编程的基石,其中的容器、算法和迭代器为开发者提供了高效、灵活的数据处理工具。vector作为STL中最常用的顺序容器,不仅支持动态数组的功能,还通过自动内存管理和丰富的操作接口,极大简化了数据操作的复杂性。无论是在日常开发还是算法竞赛中,v......
  • asp.net c#获取内部网关地址
    在ASP.NET中获取内部网关地址,可以使用NetworkInterface类来获取所有网络接口的信息,然后找到默认网关的IP地址。以下是一个示例代码:usingSystem;usingSystem.Net;usingSystem.Net.NetworkInformation;publicclassProgram{publicstaticvoidMain(){......