0
votes

I am writing a lex program. The objective of this problem is that I enter a string Exemple Name@PhoneNumber also the first letter in the name should be uppercase letter

letterMin ([a-z])
letterMaj ([A-Z])
Letter ({letterMaj}({letterMin})*)
Number ([0-9])
Chaine ({letter}@({Number})*)
%%
{Chaine} printf("enter your chaine");
.* printf("Lexical Error");
%%
int yywrap(){return 1;}
main ()
{
yylex ();
}

enter image description here

1

1 Answers

2
votes

When it comes to symbol names, case is important. You want something like this:

letterMin ([a-z])
letterMaj ([A-Z])
letter ({letterMaj}({letterMin})*)
Number ([0-9])
Chaine ({letter}@({Number})*)