Match类和MatchCollection类

2024-06-21 05:48
文章标签 match matchcollection

本文主要是介绍Match类和MatchCollection类,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大笑 《C#字符串与正则表达式参考手册》学习笔记之Match类和MatchCollection类


     利用Match类和MatchCollection类,可以获得通过一个正则表达式实现的每一个匹配的细节。Match表示一次匹配,而MatchCollection类是一个Match对象的集合其中的每一个对象都表示了一次成功的匹配。

      我们可以使用Regex对象的Match()方法和Matches()方法来检索匹配。

1.Match()方法

前三种方法是实例方法,后两种是静态方法,所有方法都返回一个Match对象,其中包含了匹配的各种细节!注意:Match()对象只代表实现的第一次匹配,而不是所有的匹配!区别于Matches()!


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Windows.Forms;namespace Regular
{class Program{static void Main(string[] args){string inStr = "sea sem seg,word,love,sed";Regex myRegex=new Regex("se.");Match myMatch = myRegex.Match(inStr, 4);while (myMatch.Success){//MessageBox.Show(myMatch.Value);Console.WriteLine(myMatch.Value);myMatch = myMatch.NextMatch();}Console.ReadKey();}}
}

2.MatchCollection()方法

      使用Regex.Matches()方法,可以得到MathCollection对象的一个引用。这个集合类中包含分别代表每一次正则表达式匹配的Match对象。在处理多匹配时尤其有用,而且可以代替Match.NextMatch()方法。

      MatchCollection类有两个有用的属性CountItem。Count返回匹配的次数,Item允许通过下表访问每一个Match对象!

//
//                       _oo0oo_
//                      o8888888o
//                      88" . "88
//                      (| -_- |)
//                      0\  =  /0
//                    ___/`---'\___
//                  .' \\|     |// '.
//                 / \\|||  :  |||// \
//                / _||||| -:- |||||- \
//               |   | \\\  -  /// |   |
//               | \_|  ''\---/''  |_/ |
//               \  .-\__  '-'  ___/-. /
//             ___'. .'  /--.--\  `. .'___
//          ."" '<  `.___\_<|>_/___.' >' "".
//         | | :  `- \`.;`\ _ /`;.`/ - ` : | |
//         \  \ `_.   \_ __\ /__ _/   .-` /  /
//     =====`-.____`.___ \_____/___.-`___.-'=====
//                       `=---='
//
//
//     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
//               佛祖保佑         永无BUG
//
//


这篇关于Match类和MatchCollection类的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1080373

相关文章

Android fill_parent、match_parent、wrap_content三者的作用及区别

这三个属性都是用来适应视图的水平或者垂直大小,以视图的内容或尺寸为基础的布局,比精确的指定视图的范围更加方便。 1、fill_parent 设置一个视图的布局为fill_parent将强制性的使视图扩展至它父元素的大小 2、match_parent 和fill_parent一样,从字面上的意思match_parent更贴切一些,于是从2.2开始,两个属性都可以使用,但2.3版本以后的建议使

JavaScript正则表达式六大利器:`test`、`exec`、`match`、`matchAll`、`search`与`replace`详解及对比

在JavaScript中,正则表达式(Regular Expression)是一种用于文本搜索、替换、匹配和验证的强大工具。本文将深入解析与正则表达式相关的几个主要执行方法:test、exec、match、matchAll、search和replace,并对它们进行对比,帮助开发者更好地理解这些方法的使用场景和差异。 正则表达式基础 在深入解析方法之前,先简要回顾一下正则表达式的基础知识。正则

easyswoole not controller class match

not controller class match composer.json 注册 App 这个名称空间了吗?执行过 composer dump-autoload 了吗?存在 Index 控制器,但是文件大小写、路径都对了吗? task socket listen fail 注意,在部分环境下,例如 win10 的 docker 环境中,不可把虚拟机共享目录作为 EasySwoole 的 T

【硬刚ES】ES基础(二十一) 单字符串多字段查询:Multi Match

本文是对《【硬刚大数据之学习路线篇】从零到大数据专家的学习指南(全面升级版)》的ES部分补充。

【Rust】006-Rust 枚举与`match`、`if let`、`let else`

【Rust】006-Rust 枚举与match、if let、let else 文章目录 【Rust】006-Rust 枚举与`match`、`if let`、`let else`一、简介二、使用场景三、基本使用1、定义枚举2、使用枚举 四、功能详解1、带数据的枚举2、使用`match`进行模式匹配3、使用`if let`简化特定变体的处理4、使用`let else`处理带条件的匹配 五、

机器学习三:cumulative match score

1.这是机器学习中knn算法的一个概念,没有找到中文资料,那么可以看这个: https://stats.stackexchange.com/questions/142323/cumulative-match-score 2.同时我读的论文中也有对其的解释: 3.这是一篇人脸识别的论文,人脸一共C=200个,那么knn最后会有个p*200的矩阵,p是想要知道的人脸,也就是测试,p

从玩法到收益,MATCH NFT如何引领NFT市场新潮流?

如果要问最近NFT领域最热门的项目是什么,MATCH NFT无疑是版本答案。 MATCH NFT,以其创新的发行机制和多元化的收益模式,成为了NFT领域的热门项目,Match NFT将于8月31日正式开启拍卖,MATCH NFT当下的火爆热度,迅速吸引了加密行业的广泛关注。 众所周知,NFT市场一直都是神仙打架各显神通,成为市场焦点的MATCH NFT究竟有什么独到之处,为何能够在如此

PHP 正则表达式匹配 preg_match 与 preg_match_all 函数

PHP 正则表达式匹配 preg_match 与 preg_match_all 函数 原文地址:http://www.5idev.com/p-php_preg_match.shtml 正则表达式在 PHP 中的应用 在 PHP 应用中,正则表达式主要用于: 正则匹配:根据正则表达式匹配相应的内容正则替换:根据正则表达式匹配内容并替换正则分割:根据正则表达式分割字符串

HDP 2.6.3.0 ambari安装 :Cannot match package for regexp name XX_${stack_version}错误

博主在Centos7.5 上进行HDP 2.6.3.0的安装,在安装过程中: 报错: :Cannot match package for regexp name xx_${stack_version} 如图: 博主这里以hbase为例,其他的可能是hadoop、pig等等。 参考了以下两篇文章的方法: 第一: https://blog.csdn.net/weixin_4215168

.net正则表达式大全(.net 的 System.Text.RegularExpressions.Regex.Match()方法使用)

.net正则表达式大全(.net 的 System.Text.RegularExpressions.Regex.Match()方法使用) 正则表达式的本质是使用一系列特殊字符模式,来表示某一类字符串。正则表达式无疑是处理文本最有力的工具,而.NET的System.dll类库提供的System.Text.RegularExpressions.Regex类实现了验证正则表达式的方法。Regex