Csharp写一个正则表达式,获取FSM/20=POWER ON BLOCK,将20赋值给row,将POWER ON BLOCK赋值给Text
时间: 2024-02-01 07:16:37 浏览: 201
可以使用如下的正则表达式来匹配字符串 "FSM/20=POWER ON BLOCK":
```
^FSM\/(\d+)=([^\n]+)
```
解释一下这个正则表达式:
- `^`:匹配字符串的开头
- `FSM\/`:匹配字符串中的 "FSM/" 字符串
- `(\d+)`:匹配一个或多个数字,并将其捕获为第一个分组
- `=`:匹配等号字符
- `([^\n]+)`:匹配任意非换行符的字符,这里使用了贪婪模式,将其捕获为第二个分组
在 C# 中使用这个正则表达式可以这样写:
```csharp
string input = "FSM/20=POWER ON BLOCK";
string pattern = @"^FSM\/(\d+)=([^\n]+)";
Match match = Regex.Match(input, pattern);
if (match.Success)
{
int row = int.Parse(match.Groups[1].Value);
string Text = match.Groups[2].Value;
Console.WriteLine($"row: {row}");
Console.WriteLine($"Text: {Text}");
}
else
{
Console.WriteLine("No match found.");
}
```
输出结果为:
```
row: 20
Text: POWER ON BLOCK
```
阅读全文