%{
#include < string. h>
%}
datatype int
| float | double
| string
| char
L [ a- zA- Z]
D [ 0 - 9 ]
%%
[ 0 - 9 ] { 10 } { printf
( "This
is a Phone
Number : %s\n", yytext);} { datatype
} { printf
( "This
is a Datatype
: %s\n", yytext);} { L
} ( { L
} | { D
} ) * { printf
( "This
is an Identifier
: %s\n", yytext);} { D
} + { printf
( "This
is a
Number : %s\n", yytext);} [ a- zA- Z0- 9 . _%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,} {printf("This is an Email Address: %s\n", yytext);}
[ 0 - 9 ] * \
. [ 0 - 9 ] + { printf
( "This
is a Floating
- Point
Number : %s\n", yytext);} 0 [ xX
] [ 0 - 9a
- fA
- F
] + { printf
( "This
is a Hexadecimal
Number : %s\n", yytext);} [ +- ] ?
[ 0 - 9 ] + { printf
( "This
is an
Integer : %s\n", yytext);} \
'[a-zA-Z]\' { printf
( "This
is a Single Character
: %s\n", yytext);} [ + \- */ ] { printf
( "This
is an Operator
: %s\n", yytext);} \"
[ ^\"
] * \"
{ printf
( "This
is a String Literal
: %s\n", yytext);} %%
int main( ) {
yylex( ) ;
return 0 ;
}
int yywrap( ) {
return 1 ;
}
JXsKI2luY2x1ZGUgPHN0cmluZy5oPgolfQoKZGF0YXR5cGUgaW50fGZsb2F0fGRvdWJsZXxzdHJpbmd8Y2hhcgpMICAgICAgICBbYS16QS1aXQpEICAgICAgICBbMC05XQolJQpbMC05XXsxMH0gICAgICAgICAgICAge3ByaW50ZigiVGhpcyBpcyBhIFBob25lIE51bWJlcjogJXNcbiIsIHl5dGV4dCk7fQp7ZGF0YXR5cGV9ICAgICAgICAgICAge3ByaW50ZigiVGhpcyBpcyBhIERhdGF0eXBlOiAlc1xuIiwgeXl0ZXh0KTt9CntMfSh7TH18e0R9KSogICAgICAgICB7cHJpbnRmKCJUaGlzIGlzIGFuIElkZW50aWZpZXI6ICVzXG4iLCB5eXRleHQpO30Ke0R9KyAgICAgICAgICAgICAgICAgIHtwcmludGYoIlRoaXMgaXMgYSBOdW1iZXI6ICVzXG4iLCB5eXRleHQpO30KW2EtekEtWjAtOS5fJSstXStAW2EtekEtWjAtOS4tXStcLlthLXpBLVpdezIsfSAge3ByaW50ZigiVGhpcyBpcyBhbiBFbWFpbCBBZGRyZXNzOiAlc1xuIiwgeXl0ZXh0KTt9ClswLTldKlwuWzAtOV0rICAgICAgICB7cHJpbnRmKCJUaGlzIGlzIGEgRmxvYXRpbmctUG9pbnQgTnVtYmVyOiAlc1xuIiwgeXl0ZXh0KTt9CjBbeFhdWzAtOWEtZkEtRl0rICAgICB7cHJpbnRmKCJUaGlzIGlzIGEgSGV4YWRlY2ltYWwgTnVtYmVyOiAlc1xuIiwgeXl0ZXh0KTt9ClsrLV0/WzAtOV0rICAgICAgICAgICB7cHJpbnRmKCJUaGlzIGlzIGFuIEludGVnZXI6ICVzXG4iLCB5eXRleHQpO30KXCdbYS16QS1aXVwnICAgICAgICAgIHtwcmludGYoIlRoaXMgaXMgYSBTaW5nbGUgQ2hhcmFjdGVyOiAlc1xuIiwgeXl0ZXh0KTt9ClsrXC0qL10gICAgICAgICAgICAgICB7cHJpbnRmKCJUaGlzIGlzIGFuIE9wZXJhdG9yOiAlc1xuIiwgeXl0ZXh0KTt9ClwiW15cIl0qXCIgICAgICAgICAgICB7cHJpbnRmKCJUaGlzIGlzIGEgU3RyaW5nIExpdGVyYWw6ICVzXG4iLCB5eXRleHQpO30KJSUKCmludCBtYWluKCkgewogICAgeXlsZXgoKTsKICAgIHJldHVybiAwOwp9CgppbnQgeXl3cmFwKCkgewogICAgcmV0dXJuIDE7Cn0KCg==