`
piperzero
  • 浏览: 3555498 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

[C#][正则表达式]寻找匹配的Groups的几种方法

阅读更多
<iframe align="top" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog01.html" frameborder="0" width="728" scrolling="no" height="90"></iframe>

寻找匹配的Groups的几种方法示例:

//
// 两种大方法:
// MatchCollectionMatches
// MatchMatch方式
//
// 第一大种:
MatchCollection mMCollection =
oRegex.Matches(strHTMLContent);
if(mMCollection.Count > 1)
{
foreach(Match m in mMCollection)
{
Group ghiddentonecodes = m.Groups["hiddentonecodes"];
strValue = ghiddentonecodes.Value;
}
}

// 第二大种:
// 这里面有两种方式:
// 第2.1种:NextMacth方式
Match mNext;
int posn, length;
for ( mNext = oRegex.Match( strHTMLContent ) ; mNext.Success ; mNext = mNext.NextMatch() )
{
foreach( Group g in mNext.Groups )
{
if( g.Length != 0 )
{
// Position of Capture object.
posn = g.Index;
// Length of Capture object.
length = g.Length;
strValue = g.Value;
}
}
}
//
// 第2.2种:CaptureCollection方式
////String[] results = new String[20];
// Loop through the match collection to retrieve all
// matches and positions.
Match mResult = oRegex.Match(strHTMLContent);
if(false == mResult.Success)
{
m_strLastError =
("[ParseFile][解析HTML]错误描述:没有匹配到");
return "";
}
CaptureCollection cc;
foreach(Group g in mResult.Groups)
{
// Capture the Collection for Group(i).
cc = g.Captures;
for (int j = 0; j {
// Position of Capture object.
posn = cc[j].Index;
// Length of Capture object.
length = cc[j].Length;
strValue = cc[j].Value;
}
}



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=111223


分享到:
评论

相关推荐

    C#正则表达式语法大全

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

    C#中的正则表达式详解

    2. **Match 类**:表示正则表达式匹配操作的结果。当使用 Regex 类的 Match 方法时,会返回一个 Match 对象,该对象包含了关于匹配结果的信息。例如: ```csharp Regex r = new Regex("abc"); Match m = r.Match...

    利用正则表达式巧妙解析度分秒格式字符串

    在编程领域,正则表达式是一种强大的文本处理工具,它能帮助我们进行复杂的字符串匹配、查找、替换和解析。在本话题中,我们将探讨如何利用C#中的正则表达式来巧妙地解析度分秒格式的字符串,将其转换为统一的度数...

    02C#正则表达式编程.doc

    C#正则表达式编程是.NET框架中处理文本模式匹配的重要工具。正则表达式是一种强大的文本处理语言,能够高效地查找、替换和提取文本中的特定模式。在C#中,正则表达式主要通过`System.Text.RegularExpressions`命名...

    C#正则表达式匹配HTML中的图片路径,图片地址代码

    正则表达式是一种用于匹配字符串中字符组合的模式。在处理HTML文档时,正则表达式可以用来搜索和提取特定信息,比如图片的路径。当需要在HTML文档中提取图片地址时,需要考虑到HTML中的img标签有多种写法,并且可能...

    C#编程的正则表达式编程处理

    例如,`Regex.IsMatch()`用于检查字符串是否与正则表达式匹配,`Regex.Replace()`用于替换匹配的文本。 ```csharp Regex r = new Regex("\\s2000"); // 使用两个反斜杠作为转义字符 bool match = r.IsMatch(...

    解读 C# 中的正则表达式

    - **IsMatch**: 检查字符串是否与正则表达式匹配。 - **Match**: 返回一个`Match`对象,表示第一次匹配的结果。 - **Matches**: 返回一个`MatchCollection`,包含所有匹配的结果。 - **Replace**: 替换字符串中符合...

    正则表达式用法 小工具

    7. **预定义字符类**:C#正则表达式支持一些预定义的字符类,如`\w`(等同于[a-zA-Z0-9_])、`\W`(非单词字符)、`\s`(空白字符)、`\S`(非空白字符)等。 8. **标志修饰符**:正则表达式还可以添加一些标志修饰...

    用正则表达式写的网络蜘蛛

    正则表达式(Regular Expression)是一种强大的文本处理工具,广泛应用于数据提取、文本匹配和搜索替换等场景。在IT领域,尤其是爬虫技术中,正则表达式扮演着至关重要的角色。网络蜘蛛,又称为网络爬虫或Web爬虫,...

    C#字符串和正则表达式参考手册,有很好的参考价值。

    - `Match`方法检查输入字符串是否包含与正则表达式匹配的部分: ```csharp Match match = regex.Match(input); bool isMatch = match.Success; ``` - `IsMatch`方法直接返回匹配结果: ```csharp bool isMatch = ...

    [字符串]字符串提取(获取两个字符串中间的字符串)

    首先,C#提供了丰富的字符串类(System.String)和正则表达式类(System.Text.RegularExpressions)来帮助我们完成这项工作。在标准的字符串方法中,没有直接提供一个功能可以获取两个已知字符串之间的子串,但我们...

    vb.net例子-正则-取函数

    在VB.NET中,正则表达式(Regular Expression)是一种强大的文本处理工具,它允许程序员通过模式匹配来处理字符串。在本例中,我们探讨的是如何使用VB.NET中的正则表达式来提取函数名称。在VB.NET中,可以利用System...

    解析字符串

    在"解析字符串"的过程中,我们通常会用到以下几种正则表达式概念: 1. **匹配模式**:如`\w+`匹配任何单词字符(等同于[a-zA-Z0-9_]),`\s`匹配任何空白符,`[abc]`匹配字符'a'、'b'或'c'。 2. **量词**:`*`表示...

    C#使用宏替换字符串计算器源码

    这可以通过正则表达式匹配和反射调用来实现。 ```csharp public static string Evaluate(string input) { Regex regex = new Regex(@"\b(add|subtract)\b\((\d+), (\d+)\)"); MatchCollection matches = regex....

    ASP.net(C#)从其他网站抓取内容并截取有用信息的实现代码

    正则表达式提供了一种灵活的文本匹配方式,能够识别和提取网页中符合特定模式的元素。 在本例中,正则表达式的模式是: ```csharp @"发表评论&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;divclass=""body""&gt; ([\s\S]*?)&lt;/div&gt;&lt;divclass=""share...

Global site tag (gtag.js) - Google Analytics