关闭

C++ Regex 邮箱校验

标签: regexc++email
561人阅读 评论(0) 收藏 举报
分类:
  1. #include <regex>  
  2. #include <iostream>  
  3. #include <string>  
  4.   
  5. bool is_email_valid(const std::string& email)  
  6. {  
  7.    // define a regular expression  
  8.    const std::tr1::regex pattern  
  9.       ("(\\w+)(\\.|_)?(\\w*)@(\\w+)(\\.(\\w+))+");  
  10.   
  11.    // try to match the string with the regular expression  
  12.    return std::tr1::regex_match(email, pattern);  
  13. }  
  14.   
  15. int main()  
  16. {  
  17.    std::string email1 = "marius.bancila@domain.com";  
  18.    std::string email2 = "mariusbancila@domain.com";  
  19.    std::string email3 = "marius_b@domain.co.uk";  
  20.    std::string email4 = "marius@domain";  
  21.   
  22.    std::cout << email1 << " : " << (is_email_valid(email1) ?  
  23.       "valid" : "invalid") << std::endl;  
  24.    std::cout << email2 << " : " << (is_email_valid(email2) ?  
  25.       "valid" : "invalid") << std::endl;  
  26.    std::cout << email3 << " : " << (is_email_valid(email3) ?  
  27.      "valid" : "invalid") << std::endl;  
  28.    std::cout << email4 << " : " << (is_email_valid(email4) ?  
  29.      "valid" : "invalid") << std::endl;  
  30.   
  31.    return 0;  
  32. }  


转帖:http://ubuntuforums.org/showthread.php?t=1114404


转自http://blog.csdn.net/Mirage520/article/list/2

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:702922次
    • 积分:9095
    • 等级:
    • 排名:第2023名
    • 原创:94篇
    • 转载:604篇
    • 译文:1篇
    • 评论:99条
    文章分类
    最新评论