%{
int lines=0;
int words=0;
int letters=0;
int num=0;
int spl_char=0;
int total=0;
%}
%%
\n { lines++; words++;}
[\t ' '] { words++; }
[A-Za-z] { letters++; }
[0-9] { num++; }
. { spl_char++; }
%%
int main(void)
{
yyin = fopen("file.txt","r");
yylex();
total=letters+num+spl_char;
printf(" Text Contains : ");
printf("\n%d Lines", lines);
printf("\n%d Words",words);
printf("\n%d Letters",letters);
printf("\n%d Digits", num);
printf("\n%d Special Characters",spl_char);
printf("\nTotal %d characters : \n",total);
return 0;
}
int yywrap()
{
return(1);
}
JXsKaW50IGxpbmVzPTA7CmludCB3b3Jkcz0wOwppbnQgbGV0dGVycz0wOwppbnQgbnVtPTA7CmludCBzcGxfY2hhcj0wOwppbnQgdG90YWw9MDsKJX0KCgolJSAKXG4geyBsaW5lcysrOyB3b3JkcysrO30KW1x0ICcgJ10geyB3b3JkcysrOyB9CltBLVphLXpdIHsgbGV0dGVycysrOyB9ClswLTldIHsgbnVtKys7IH0KLiB7IHNwbF9jaGFyKys7IH0KJSUKCgoKaW50IG1haW4odm9pZCkKewp5eWluID0gZm9wZW4oImZpbGUudHh0IiwiciIpOwp5eWxleCgpOwp0b3RhbD1sZXR0ZXJzK251bStzcGxfY2hhcjsKcHJpbnRmKCIgVGV4dCBDb250YWlucyA6ICIpOwpwcmludGYoIlxuJWQgTGluZXMiLCBsaW5lcyk7CnByaW50ZigiXG4lZCBXb3JkcyIsd29yZHMpOwpwcmludGYoIlxuJWQgTGV0dGVycyIsbGV0dGVycyk7CnByaW50ZigiXG4lZCBEaWdpdHMiLCBudW0pOwpwcmludGYoIlxuJWQgU3BlY2lhbCBDaGFyYWN0ZXJzIixzcGxfY2hhcik7CnByaW50ZigiXG5Ub3RhbCAlZCBjaGFyYWN0ZXJzIDogXG4iLHRvdGFsKTsKcmV0dXJuIDA7Cn0KIAppbnQgeXl3cmFwKCkKewpyZXR1cm4oMSk7Cn0KCgo=