LEX(1) General Commands Manual LEX(1)NAME
lex - generator of lexical analysis programs
SYNOPSIS
lex [ -tvn ] [ file ... ]
DESCRIPTION
Lex generates programs to be used in simple lexical analysis of text. The input files (standard input default) contain regular expressions
to be searched for and actions written in C to be executed when expressions are found.
A C source program, lex.yy.c is generated. This program, when run, copies unrecognized portions of the input to the output, and executes
the associated C action for each regular expression that is recognized.
The options have the following meanings.
-t Place the result on the standard output instead of in file lex.yy.c.
-v Print a one-line summary of statistics of the generated analyzer.
-n Opposite of -v; -n is default.
EXAMPLES
This program converts upper case to lower, removes blanks at the end of lines, and replaces multiple blanks by single blanks.
%%
[A-Z] putchar(yytext[0]+'a'-'A');
[ ]+$
[ ]+ putchar(' ');
FILES
lex.yy.c
output
/sys/lib/lex/ncform
template
SEE ALSO yacc(1), sed(1)
M. E. Lesk and E. Schmidt, `LEX--Lexical Analyzer Generator', Unix Research System Programmer's Manual, Tenth Edition, Volume 2.
SOURCE
/sys/src/cmd/lex
BUGS
Cannot handle UTF.
The asteroid to kill this dinosaur is still in orbit.
LEX(1)
Check Out this Related Man Page
LEX(1) General Commands Manual LEX(1)NAME
lex - generator of lexical analysis programs
SYNOPSIS
lex [ -tvfn ] [ file ] ...
DESCRIPTION
Lex generates programs to be used in simple lexical analyis of text. The input files (standard input default) contain regular expressions
to be searched for, and actions written in C to be executed when expressions are found.
A C source program, 'lex.yy.c' is generated, to be compiled thus:
cc lex.yy.c -ll
This program, when run, copies unrecognized portions of the input to the output, and executes the associated C action for each regular
expression that is recognized.
The options have the following meanings.
-t Place the result on the standard output instead of in file "lex.yy.c".
-v Print a one-line summary of statistics of the generated analyzer.
-n Opposite of -v; -n is default.
-f "Faster" compilation: don't bother to pack the resulting tables; limited to small programs.
EXAMPLE
lex lexcommands
would draw lex instructions from the file lexcommands, and place the output in lex.yy.c
%%
[A-Z] putchar(yytext[0]+'a'-'A');
[ ]+$ ;
[ ]+ putchar(' ');
is an example of a lex program that would be put into a lex command file. This program converts upper case to lower, removes blanks at the
end of lines, and replaces multiple blanks by single blanks.
SEE ALSO yacc(1), sed(1)
M. E. Lesk and E. Schmidt, LEX - Lexical Analyzer Generator
7th Edition April 14, 1986 LEX(1)
I receive windows files via the internet on my solaris server. Since unix doesn't handle blanks well I change the blanks to ? which works just fine. I take these files and ftp them to windows so our analysts can work with them. Recently I received a file with the following structure:
... (3 Replies)
hello i'm trying to figure out how to number a blank line. For instance this :
sed '/./=' file | sed '/./N; s/\n/ /'
gives me
1 aaaa
2 bbbbbb
4 cccccc
5 ffkkkfff
6 ffsdfdfs
I would like something like this:
1 aaaaa
2
3 bbbbbb
4
5 cccccc
And so... (6 Replies)
Hi everyone,
I would like to know how to compile and run lex programs on solaris 10.
the conventional way is
$ lex <name.l>
$ cc lex.yy.c -ll
$ ./a.out
but while trying to execute the 2nd command :i get a reference saying that the command is old or that main is not supported...
Hence... (1 Reply)
Hi ,
I need to develop a parser which should match something like
1. text a=5 " a=20";
2. text a=..."
a=20";
3 text a=..."
a=20
b=34
c=12
";
I have used this regular expression in my Lex file to generate the tokens:
\".\s*.*\s.\" (8 Replies)
Hi,
I need a regular expression grepping all lines starting with '*' followed by a VARIOUS number of blanks and then followed by the string 'Runjob=1'.
I tried that code, but it doesn't work:
grep -i '*'+'Runjob=1' INPUT_FILE >>OUTPUT_FILE
Can someone help me?
Thanks (8 Replies)
Hi,
There's a bug using JavaDoc that generates an error if a tag <a...> is found in a javadoc comment, which is not a HTML reference. For example this error is produced with generics. I want to insert an space between "<" and "a". Expression is able to find where this happens using find and grep: ... (6 Replies)
Hi
While installing Glimpse on Unix, I am getting the following error.
Can someone please help to resolve the same ?
flex -F -8 htuml2txt.lex
make: flex: Command not found
make: *** Error 127
make: Leaving directory `/home/user30/glimpse-4.18.6/dynfilters'
make: *** Error 2
Regards... (1 Reply)
Hi, I want to be able to write a simple program that takes in input from the command line. I;m am at the level of getchar and putchar. Any examples would be a great help thanks.
I intend/prefer also to use the pipe command | eg: input | file1
---------- Post updated at 04:08 PM ----------... (4 Replies)
Hi everyone!
This is my very first post, sorry if I'm not posting in the right category.
I'm trying to match a newline "/n" using lex/yacc.
For example,
print(9,'\n',8)
should print
9
8
now do I write a regular expression to match exactly " '\n' "
Thanks! (1 Reply)
Hello,
I try to print out with sed or awk the 21.18 between "S3 Temperature" and "GrdC" in a text file.
The blanks are all real blanks no tabs.
Only the two first chars from temperture are required. So the "21" i need as output.
S3 Temperatur 21.18 GrdC No Alarm
... (3 Replies)
Hi Guys,
I've wondered for some time the performance analysis between using sed and awk. say i want to print lines from a very large file. For ex say a file with 100,000 records. i want to print the lines 25,000 to 26,000 i can do so by the following commands:
sed -n '25000,26000 p'... (11 Replies)
Hello all,
I recently wrote a simple script for the analysis jobs I do at work. I have to run multiple files through 5 different stages of an analysis program, the script simply runs all of the files through each stage automatically. My question is this: The computer I'm using has 12 cores, each... (8 Replies)
Alright, so I'm writing a file for the lexical analyzer (lex). It will be used to check C code (collecting the identifiers and storing those names along with the line numbers the identifier was found on). I'm not used to 'C' so I'm having some difficulty.
I am using a function (insertId()) to... (4 Replies)
Florida State University, Tallahassee, FL USA, Dr. Whalley, COP4342
1. The problem statement, all variables and given/known data:
Create a lex specification file that reads a C source program that ignores keywords and collects all identifiers (regular variable names) and also displays the line... (3 Replies)
I have a file that has some lines starts with *
I want to get these lines, then get the word between "diac" and "lex".
ex.
file:
;;WORD AlAx
*0.942490 diac:Al>ax lex:>ax_1 bw:Al/DET+>ax/NOUN+ gloss:brother pos:noun prc3:0 prc2:0 prc1:0 prc0:Al_det per:na asp:na vox:na mod:na gen:m num:s... (4 Replies)