c#编程,Regex.Matches("ChC12ChC", @"(Ch[1-6]|Ch[A-F]|LA|LB|VTR1|VTR2|ATR)")怎么去重
时间: 2024-03-01 14:47:35 浏览: 106
C# Dictionary去重算法
在C#编程中,可以使用正则表达式来匹配和提取字符串中的特定模式。在给定的例子中,Regex.Matches方法用于找到字符串中与给定正则表达式匹配的所有子字符串。
要去重这些匹配结果,可以使用HashSet<T>类来存储唯一的匹配项。HashSet<T>是一个集合类,它只包含唯一的元素,并且提供了高效的查找和插入操作。
下面是一个示例代码,演示如何使用HashSet<T>来去重匹配结果:
```csharp
using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
public class Program
{
public static void Main()
{
string input = "ChC12ChC";
string pattern = @"(Ch[1-6]|Ch[A-F]|LA|LB|VTR1|VTR2|ATR)";
HashSet<string> uniqueMatches = new HashSet<string>();
MatchCollection matches = Regex.Matches(input, pattern);
foreach (Match match in matches)
{
uniqueMatches.Add(match.Value);
}
foreach (string match in uniqueMatches)
{
Console.WriteLine(match);
}
}
}
```
运行上述代码,输出将是去重后的匹配结果:
```
ChC
ChC12
```
阅读全文