can you post the exact format of your include line and what is the logic to map the base to actual values.
in base/includefile.ext how do we get to know the value of base here is a general solution assumin that tha format of your include line is include "base/filename.extenction" all the nasses should be stored in a hash called %baseHash stored in a hash my $outStr = makeOutput("Source_File_Name"); open(OUT, ">Output_File_Name"); print OUT $outStr; close(OUT); sub makeOutput($){ my ($source) = @_; my $fText = file2Str($source); $fText =~ s/include\s"(w+)\/(w+\.w+)"/$baseHash{$1}\/makeOutput($2)/emg; return $fText; } sub file2Str($){ my ($fn) = @_; open(FH, "<$fn"); my @fLines = <FH>; close(FH); return join('', @fLines); } ________________________________________ Rakhitha Karunarathne Web Master www.Ad-Man.tk - Free Unlimited Banner Rotators ________________________________________ ----- Original Message ----- From: "Girish N" <[EMAIL PROTECTED]> To: "'LRMK'" <[EMAIL PROTECTED]> Sent: Wednesday, May 26, 2004 6:10 PM Subject: RE: need help(urgent) > Hey > Thanks a lot for the help > But I have one more problem....sorry to bother u but this is kind of > urgent... > Include statement in my code looks like this > > include $(BASE_DIR)/make_include > > I need to get the value of the $(BASE_DIR) and then open the file > base/make_include > Can u plz tell me how to do that......i am bad at pattern matching....and I > need to finish this today.... > > Plz reply back > Thanks & Regards > Girish > > > > -----Original Message----- > From: LRMK [mailto:[EMAIL PROTECTED] > Sent: Wednesday, May 26, 2004 5:11 PM > To: Girish N > Cc: [EMAIL PROTECTED] > Subject: Re: need help(urgent) > > try this, this should work > ____________________________________________________________________________ > __________________________________ > > > #Pass the file name as a parameter > sub printFile($){ > my ($fname) = @_; > > #Load the spesified file > my @lines = readFile($fname); > chomp @lines; > > > foreach my $line (@lines){ > > if ($line =~ m/include\s"(\w+\.\w+)"/i){ # check for the include > line > printFile($1); > }else{ > print "$line\n"; > } > } > > > > > } > > sub readFile($){ > my ($fname) = @_; > open(FH, "<$fname") or die $!; > > my @fLines= <FH>; > close(FH); > > return @fLines; > > } > > > > > > > > ________________________________________ > Rakhitha Karunarathne > Web Master > www.Ad-Man.tk - Free Unlimited Banner Rotators > ________________________________________ > > > > ----- Original Message ----- > From: "Girish N" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Wednesday, May 26, 2004 4:49 PM > Subject: need help(urgent) > > > > Hi All > > > > I am stuck with this script which I need to finish today... > > > > > > > > What I am supposed to do is > > > > 1) parse a file and search for included files and insert those > > included files in the file. > > > > Eg. > > > > File1 > > > > Lkdfs > > > > Sdfdsfds > > > > Sdfsdf > > > > Include "one.txt" > > > > Sdfdsf > > > > Sdfsdf > > > > Werewr > > > > Tytry > > > > > > > > Where one.txt is > > > > A > > > > B > > > > C > > > > D > > > > E > > > > F > > > > > > > > The expected result is > > > > > > > > File2 > > > > Lkdfs > > > > Sdfdsfds > > > > Sdfsdf > > > > A > > > > B > > > > C > > > > D > > > > E > > > > F > > > > Sdfdsf > > > > Sdfsdf > > > > Werewr > > > > Tytry > > > > > > > > > > > > Please help me with this .... > > > > Thanks in advance > > > > Girish > > > > > > -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>