C#邮箱有效性,校验规则为只有一个@字符,并且不能以@字符开始或结尾
时间: 2024-01-16 07:02:11 浏览: 115
在C#中,可以使用正则表达式来校验邮箱的有效性,实现代码如下:
```csharp
using System;
using System.Text.RegularExpressions;
class Program
{
static bool IsValidEmail(string email)
{
string pattern = @"^[^@\s]+@[^@\s]+\.[^@\s]+$";
return Regex.IsMatch(email, pattern) && !email.StartsWith("@") && !email.EndsWith("@");
}
static void Main(string[] args)
{
// 测试样例
Console.WriteLine(IsValidEmail("example@domain.com")); // True
Console.WriteLine(IsValidEmail("example@domain@com")); // False
Console.WriteLine(IsValidEmail("@domain.com")); // False
Console.WriteLine(IsValidEmail("example@domain.com ")); // False
}
}
```
在上述代码中,使用了正则表达式`"^[^@\s]+@[^@\s]+\.[^@\s]+$"`来匹配邮箱格式,其中:
- `^`表示字符串的开头;
- `[^@\s]+`表示除@字符和空格外的任意字符出现一次或多次;
- `@`表示@字符;
- `[^@\s]+`表示除@字符和空格外的任意字符出现一次或多次;
- `\.`表示.字符,需要使用\转义;
- `[^@\s]+`表示除@字符和空格外的任意字符出现一次或多次;
- `$`表示字符串的结尾。
如果字符串符合上述正则表达式,并且不以@字符开始或结尾,则表示该字符串为有效的邮箱地址。
阅读全文