📜  检查有效电子邮件的 Lex 程序

📅  最后修改于: 2021-10-19 08:21:44             🧑  作者: Mango

Lex 是一个生成词法分析器的计算机程序。 Lex 读取指定词法分析器的输入流,并输出在 C 编程语言中实现词法分析器的源代码。

执行 lex 程序的命令是:

lex abc.l (abc is the file name)
cc lex.yy.c -efl
./a.out

让我们看看 lex 程序来检查有效的电子邮件。

例子:

Input : 
csetanmayjain@gmail.com
Output :
 Valid

Input : 
!23@43.com
Output : 
Not Valid

下面是实现:

/*lex code to accept a  valid email */ 
%
{
  int flag = 0; %
} %
% [a - z.0 - 9 _] + @[a - z] + ".com" | ".in"
flag = 1; %
%
main() {
  yylex();
  if (flag == 1)
    printf("Accepted");
  else
    printf("Not Accepted");
}

输出: