Problem in reading some part of a file
Hi all
I am trying to read a file which contains
rem ------------------------ book_tab variables ---------------------
.rem
.declare book_no a13
.declare l_code a10
.declare l_booking a12
.set page_no 1
.set first "N"
.set no_more_clauses "N"
#dt 1 1 80 #
#dt 2 1 6 9 48 50 61 63 76 80 80 #
.define loktabs
loc_table book_tab, book_hazmat, custdata2, edit_table,
book_rates, print_table in share update mode
..
.define get_input
select key, key1, key2,
passkey3, passkey4, print_name
into input_booking_seq, fax_header, file_no,
input_print_rates, myNoteId, print_name
from ed_table
where ed_table.tag = 'BOOK'
and ed_table.key = 'PRINT'
and ed_table.user_id = user
..
.define get_user_info
select user_loc,user_name, user_company,
into user_location, user_name, user_company,
from sec_header
where user_id = lower(substr(user,5,10))
..
.execute lok_tabs
.execute get_user_info
So you can see lot of .define lines and I need to extract the name and query from every .define lines like "get_input"
and its associated query....
I am posting my code also...
#!/usr/bin/perl
$ARGV[0] .= ".rpt";
open(FH,"<$ARGV[0]") or die "Cant open";
@arr = <FH>;
foreach $data(@arr){
if($data =~ /^\.def(.*)$/smx){
$data =~ s/(^\.\w+\s+)(\w+)(\s+)(.+)(^\. \.$)/$2,$4/smx;
print "This is Macro $data \n";
}
}
close(FH);
but its not working as the condition gets failed...
|