On Jan 9, 4:36 am, [EMAIL PROTECTED] (Jonay Herrera) wrote:
> Hello,
>
> I try  to  print (get)  a specific text selection from  a  text file,
> but  I don't know  how to  do  it:
> What I try  todo  is  to open a  file search  a string and  print
> the  follow lines from that  string until he found  a white line. then
> he need to stop.  so can i  get  the  lines (strings) that i need.
>
> #!/opt/perl/bin/perl  -w
> use  strict;
>
> #variable
>
> my @horcm_file;
>
> sub  readdata{
>   open(HORCM, "/etc/horcm10.conf") || die  ("File error");
>   @horcm_file = <HORCM>;
>   chomp(@horcm_file);
>   close(HORCM);
>   return(@horcm_file);
>
> }
>
> my @pipo=readdata();
>
> foreach (@pipo){
>   /HORCM_INST/ or next;
>   print;
>
> }

You're looking for the "flip flop" operator, which looks just like the
range operator: ..

while (my $line = <$file>) {
   if (/HORCM_INST/ .. /^\s*$/) {
       print $line;
   }
}

read more about it in:
perldoc perlop

Paul Lalli


--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/


Reply via email to