Yacc Part :
%token A B NL
%%
stmt : s NL { printf(“Valid String\n”); exit(0) ;}
;
s : A s B
|
;
%%
int yyerror(char *msg)
{
printf(“Invalid String\n”);
exit(0);
}
main ()
{
printf(“Enter the String\n”);
yyparse();
}
Lex Part :
%{
#include “y.tab.h”
%}
%%
[aA] { return A; }
[bB] { return B; }
\n { return NL ;}
. { return yytext[0]; }
%%