c# 已知字符串 1009750_SEV-12_X02_2024-11-27或者 c# 已知字符串 1009750_SEV-12_A02_2024-11-27 如何提取X02如何提取X02/A02
时间: 2024-12-24 17:34:34 浏览: 4
在 C# 中,你可以使用正则表达式 (Regular Expression) 来从给定的字符串中提取特定的部分。`X02` 或 `A02` 都是以 `_` 分隔的两个字母,我们可以编写一个函数来匹配这个模式。以下是使用正则表达式的示例:
```csharp
using System;
using System.Text.RegularExpressions;
public class Program
{
public static void Main(string[] args)
{
string input1 = "1009750_SEV-12_X02_2024-11-27";
string input2 = "1009750_SEV-12_A02_2024-11-27";
// 提取 X02 或 A02
string xValue1 = ExtractTwoLettersAfterUnderscore(input1);
string xValue2 = ExtractTwoLettersAfterUnderscore(input2);
Console.WriteLine("From input1: X02 = " + xValue1);
Console.WriteLine("From input2: X02 = " + xValue2);
Console.ReadKey();
}
public static string ExtractTwoLettersAfterUnderscore(string str)
{
string pattern = @"\d+_\w{2}";
Match match = Regex.Match(str, pattern);
if (match.Success)
return match.Value.Split('_')[1];
else
return null; // 如果没有找到,则返回null 或者抛出异常,根据需求处理
}
}
```
在这个例子中,`ExtractTwoLettersAfterUnderscore` 函数会查找以 `_` 后跟两个字母的模式,并返回这些字母。如果输入字符串不符合该模式,它将返回 `null`。
运行这段代码,你会看到输出类似这样的结果:
```
From input1: X02 = X02
From input2: X02 = A02
```
如果你想提取 `X02` 或 `A02` 后面的完整部分,比如日期,那么只需稍微修改一下正则表达式即可。
阅读全文