fork download
  1. letter [A-Za-z]
  2. name {letter}[A-Z]{1}[a-z]+(-{letter}[A-Z]{1}[a-z]+){0,1}
  3. identity [A-Za-z]{1}[0-9]{9}
  4. email [0-9]+@[a-z]+\.[a-z]+
  5. birthday ([12][0-9]{3}|[89][0-9]{2})/(0[1-9]|1[0-2])/(0[1-9]|[12][0-9]|3[01])
  6. phone \+886[0-9]{9}
  7.  
  8. %option noyywrap
  9.  
  10. %%
  11.  
  12. {name} {ECHO; printf(" is a valid name.\n");}
  13. {identity} {ECHO; printf(" is a valid identity number.\n");}
  14. {email} {ECHO; printf(" is a valid email.\n");}
  15. {birthday} {ECHO; printf(" is a valid birthday.\n");}
  16. {phone} {ECHO; printf(" is a valid phone number.\n");}
  17.  
  18. %%
  19.  
  20. int main(int argc, char *argv[]) {
  21. yylex();
  22. return(0);
  23. }
  24.  
Success #stdin #stdout #stderr 0.03s 6776KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
ERROR: /home/ONglly/prog:23:1: Syntax error: Unexpected end of file
ERROR: '$runtoplevel'/0: Undefined procedure: program/0
   Exception: (3) program ? EOF: exit