C++ Email 验证

 1 BOOL IsValidEmail( const CString& email )
 2 {
 3     int pos = 0;
 4     int countAt = 0;
 5     int posAt = 0;
 6     int posPoint = 0;
 7     for(;pos<email.GetLength();pos++){
 8         if(::isspace(email[pos])){
 9             return FALSE;
10         }
11         if(_T('@') == email[pos]){
12             countAt++;
13             posAt = pos;
14         }
15         if(_T('.') == email[pos]){
16             posPoint = pos;
17         }
18     }
19     if(countAt != 1 || posAt == 0){
20         return FALSE;
21     }
22     if(posPoint-posAt<0 || email.GetLength()-1==posPoint){
23         return FALSE;
24     }
25 
26     return true;
27 }

上面方法不是很严谨,但已经可以应付大多数情况。

正则表达式验证EMail:

1 /^w+((-w+)|(.w+))*@[A-Za-z0-9]+((.|-)[A-Za-z0-9]+)*.[A-Za-z0-9]+$/
原文地址:https://www.cnblogs.com/aishangxue/p/3385852.html