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>