在 C# 中使用 System.Text.RegularExpressions 命名空间里的正则表达式(Regex)来验证一个字符串是否符合 “key:value;key:value” 的格式,其中 value 需要是数字
时间: 2024-09-11 22:17:01 浏览: 49
在 C# 中,你可以使用 `System.Text.RegularExpressions` 命名空间下的正则表达式 (Regex) 来验证一个字符串是否按照 "key:value;key:value" 的格式,并且 value 部分确实是数字。下面是一个示例:
```csharp
using System;
using System.Text.RegularExpressions;
public class Program {
public static void Main(string[] args) {
string input = "username:123456;password:789012";
bool isValidFormat = ValidateString(input);
Console.WriteLine(isValidFormat); // 输出 true 或 false
// 定义正则表达式函数
private static bool ValidateString(string str) {
string pattern = @"^(?:\w+:\d+;)*\w+:\d+$"; // 匹配 key-value 对,value 必须为数字
return Regex.IsMatch(str, pattern);
}
}
}
```
在这个例子中,`pattern` 变量定义了正则表达式的规则,它会检查输入字符串是否符合指定格式。`^` 表示字符串开始,`\w+:\d+;` 匹配一个 key-value 对(word character + colon + number + semicolon),`*` 表示前面的模式可以重复任意次,`\w+:\d+$` 则匹配最后一个 key-value 对并且保证 value 是数字。
阅读全文