编程示例 - 电子邮件

DEELX

DEELX 正则引擎编程示例:判断电子邮件

判断一个字符串是否是一个合法的电子邮件地址。


表达式

^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@(([0-9a-zA-Z])+([-\w]*[0-9a-zA-Z])*\.)+[a-zA-Z]{2,9})$


方法

MatchExact


代码
#include "deelx.h"
int test_email(const char * string)
{
    // declare
    static CRegexpT <char> regexp("^([0-9a-zA-Z]([-.\\w]*[0-9a-zA-Z])*@(([0-9a-zA-Z])+([-\\w]*[0-9a-zA-Z])*\\.)+[a-zA-Z]{2,9})$");

    // test
    MatchResult result = regexp.MatchExact(string);

    // matched or not
    return result.IsMatched();
}

int main(int argc, char * argv[])
{
    char * str1 = "[email protected]";
    char * str2 = "[email protected]";

    printf("'%s' => %s\n", str1, (test_email(str1) ? "yes" : "no"));
    printf("'%s' => %s\n", str2, (test_email(str2) ? "yes" : "no"));

    return 0;
}

 

regexlab.com © 2005 - 2006