📌  相关文章
📜  接受以元音开头的字符串的Lex 程序

📅  最后修改于: 2021-10-21 05:32:45             🧑  作者: Mango

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

执行 lex 程序的命令是:

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

让我们看看 lex 程序接受以元音开头的字符串。
例子:

Input: animal
Output: Accepted

Input: zebra
Output: Not Accepted 

下面是实现:

/* Lex Program to accept string starting with vowel */
% {
  int flag = 0;
% }
  
%%
  
[aeiouAEIOU].[a-zA-Z0-9.]+ flag=1;
[a-zA-Z0-9]+
  
%%
  
main()
{
 yylex();
 if (flag == 1) 
    printf("Accepted"); 
 else
    printf("Not Accepted"); 
}

输出: