📜  Lex程序检查有效的手机号码

📅  最后修改于: 2021-06-28 07:30:32             🧑  作者: Mango

问题:编写一个Lex程序来检查有效的手机号码。

解释:
FLEX(快速词法分析器生成器)是一种工具/计算机程序,用于生成Vern Paxson于1987年左右在C中编写的词法分析器(扫描器或词法分析器)。Lex读取指定词法分析器的输入流,并输出在C语言中实现词法分析器的源代码编程语言。函数yylex()是运行规则部分的主要flex函数。

例子:

Input: 7017175023
Output: Mobile Number Valid

Input: 0001112223
Output: Mobile Number Invalid 

执行:

/* Lex Program to check valid Mobile Number */
  
%{
    /* Definition section */
%}
  
/* Rule Section */
%%
  
[1-9][0-9]{9} {printf("\nMobile Number Valid\n");}
  
.+ {printf("\nMobile Number Invalid\n");}
  
%%
  
// driver code 
int main() 
{
    printf("\nEnter Mobile Number : ");
    yylex();
    printf("\n");
    return 0;
}

输出: