Home » Compiler Design

LEX Code to replace white spaces of ‘Input.txt’ file by a single blank character into ‘Output.txt’ file

In this article, we going to learn how to create LEX program to analysis how many characters, white space (means \n \t “”), and words are present in given input file?
Submitted by Ashish Varshney, on March 25, 2018

For achieve to this task we create some rules in rule section in the code.

    Input file:
	    Include       help
    Output file:
	    Include help
/*Definition Section*/
%{
#include<stdio.h>
%}

%%
/*Whenever encounter an whitespace in input file 
it place with single whitespace*/
[\t" "]+ fprintf(yyout," ");		
/*print other character as it is in yyout file*/
.|\n fprintf(yyout,"%s",yytext);	
%%

/*call the yywrap function*/
int yywrap()
{
return 1;
}

int main(void)
{
yyin=fopen("input.txt","r");		
yyout=fopen("output.txt","w");
/*call the yylex function.*/
yylex();
return 0;
}

Input

LEX Code to replace white spaces of ‘Input.txt’ file by a single blank character into ‘Output.txt’ file - Incput

Output

LEX Code to replace white spaces of ‘Input.txt’ file by a single blank character into ‘Output.txt’ file - Output



Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.