Sponsored Content
Top Forums Programming parsing fixed length field with yacc/bison Post 302279115 by sungita on Thursday 22nd of January 2009 02:28:02 AM
Old 01-22-2009
Network parsing fixed length field with yacc/bison

How to specify the token length in a yacc file?
sample input format
<field1,data type ans,fixed length 6> followed by <field2,data type ans,fixed length 3>

Example i/p and o/p
Sample Input: "ab* d2 9o"
O/p : "Field1 [ab* d2] Field2 [ 9o] "

yacc/bison grammar:
record : AlphaNumericSpecialOfLength6 AlphaNAumericSpecialOfLength3
/** not like
record : FIELD1 FIELD2 { ....};
FIELD1 : ANS ANS ANS ANS ANS ANS;
FIELD2 : ANS ANS ANS { ...} ; ***/
{ printf("Field1 [%s] Field2 [%s] \n", $1 , $2); }

How to define grammar for this in yacc/bison?
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Validating fixed length field...

What's wrong with this part of my script? I just want to put each column from a fixed length file into a variable so I can validate each field later in the script. exec< myfile.dat while read afile; do a=`echo $(echo $afile |cut -c1-10)` echo "$a" b=`echo $(echo $afile |cut -c11-20)`... (12 Replies)
Discussion started by: giannicello
12 Replies

2. Shell Programming and Scripting

creating a fixed length output from a variable length input

Is there a command that sets a variable length? I have a input of a variable length field but my output for that field needs to be set to 32 char. Is there such a command? I am on a sun box running ksh Thanks (2 Replies)
Discussion started by: r1500
2 Replies

3. Programming

actions before parsing rules in lex n yacc

Hi , We have developed a grammer for our domain language using lex n yacc. I want to know is there any pre defined lex-yacc function which gets call before executing any rule (or rules). Oue requirement is, before processing any rule ,we want to perform some specific actions ? is there... (0 Replies)
Discussion started by: supritjain
0 Replies

4. UNIX for Dummies Questions & Answers

What the command to find out the record length of a fixed length file?

I want to find out the record length of a fixed length file? I forgot the command. Any body know? (9 Replies)
Discussion started by: tranq01
9 Replies

5. UNIX for Dummies Questions & Answers

Convert a tab delimited/variable length file to fixed length file

Hi, all. I need to convert a file tab delimited/variable length file in AIX to a fixed lenght file delimited by spaces. This is the input file: 10200002<tab>US$ COM<tab>16/12/2008<tab>2,3775<tab>2,3783 19300978<tab>EURO<tab>16/12/2008<tab>3,28523<tab>3,28657 And this is the expected... (2 Replies)
Discussion started by: Everton_Silveir
2 Replies

6. Shell Programming and Scripting

Make variable length record a fixed length

Very, very new to unix scripting and have a unique situation. I have a file of records that contain 3 records types: (H)eader Records (D)etail Records (T)railer Records The Detail records are 82 bytes in length which is perfect. The Header and Trailer records sometimes are 82 bytes in... (3 Replies)
Discussion started by: jclanc8
3 Replies

7. Shell Programming and Scripting

changing a variable length text to a fixed length

Hi, Can anyone help with a effective solution ? I need to change a variable length text field (between 1 - 18 characters) to a fixed length text of 18 characters with the unused portion, at the end, filled with spaces. The text field is actually field 10 of a .csv file however I could cut... (7 Replies)
Discussion started by: dc18
7 Replies

8. Shell Programming and Scripting

Fixed length fields

HPUX and posix shell Hi all. I have a record with fixed length fields....I would like to reorder the fields and preserver the fixed lengths.... cat test 4 960025460 Dept of Music 8 960025248 Dept of Music 12-08 cat... (3 Replies)
Discussion started by: lyoncc
3 Replies

9. Shell Programming and Scripting

Flat file-make field length equal to header length

Hello Everyone, I am stuck with one issue while working on abstract flat file which i have to use as input and load data to table. Input Data- ------ ------------------------ ---- ----------------- WFI001 Xxxxxx Control Work Item A Number of Records ------ ------------------------... (5 Replies)
Discussion started by: sonali.s.more
5 Replies

10. Shell Programming and Scripting

Convert variable length record to fixed length

Hi Team, I have an issue to split the file which is having special chracter(German Char) using awk command. I have a different length records in a file. I am separating the files based on the length using awk command. The command is working fine if the record is not having any... (7 Replies)
Discussion started by: Anthuvan
7 Replies
YACC(1) 						      General Commands Manual							   YACC(1)

NAME
yacc - yet another compiler-compiler SYNOPSIS
yacc [ -vd ] grammar DESCRIPTION
Yacc converts a context-free grammar into a set of tables for a simple automaton which executes an LR(1) parsing algorithm. The grammar may be ambiguous; specified precedence rules are used to break ambiguities. The output file, y.tab.c, must be compiled by the C compiler to produce a program yyparse. This program must be loaded with the lexical analyzer program, yylex, as well as main and yyerror, an error handling routine. These routines must be supplied by the user; Lex(1) is useful for creating lexical analyzers usable by yacc. If the -v flag is given, the file y.output is prepared, which contains a description of the parsing tables and a report on conflicts gener- ated by ambiguities in the grammar. If the -d flag is used, the file y.tab.h is generated with the define statements that associate the yacc-assigned `token codes' with the user-declared `token names'. This allows source files other than y.tab.c to access the token codes. FILES
y.output y.tab.c y.tab.h defines for token names yacc.tmp, yacc.acts temporary files /usr/share/misc/yaccparparser prototype for C programs SEE ALSO
lex(1) LR Parsing by A. V. Aho and S. C. Johnson, Computing Surveys, June, 1974. YACC - Yet Another Compiler Compiler by S. C. Johnson. DIAGNOSTICS
The number of reduce-reduce and shift-reduce conflicts is reported on the standard output; a more detailed report is found in the y.output file. Similarly, if some rules are not reachable from the start symbol, this is also reported. BUGS
Because file names are fixed, at most one yacc process can be active in a given directory at a time. 7th Edition October 22, 1996 YACC(1)
All times are GMT -4. The time now is 10:32 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy