🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.perl
Article #51898

Re: Jak wyciagnac linie z pliku?

#51898
From: Bartosz Feński aka fEnIo
Date: Thu, 20 May 2010 12:15
40 lines
2250 bytes
W artykule tomjas napisał(a):

>> Nieeleganckie jest dlatego, że @plik może ci bardzo urosnąć, poza tym
>> nie do końca ten kod jest zgodny z pytaniem oryginalnym.
>>
> No wiec jak to zrobic w bardziej elegancki i cywilizowany sposob? Bo
> jednak perl stanowi dla mnie caly czas czarna magie.
>> Ja to zrozumiałem tak: wypisać wszystkie linie od początku pliku do
>> pierwszego wystąpnienia /vert/; pozostałe pominąć.
>>
> Interesuje mnie kazda linia, PO ktorej wystepuje linia zawierajaca
> ciag "vert".

No skoro interesuje Cię 1 linia poprzedzająca to raczej nie ma sensu
pamiętać wszystkich, nie?

#v+
#!/usr/bin/perl

use strict;
use warnings FATAL => qw( all );

my $previous="";

while (<STDIN>) {
	chomp;
	print $previous . "\n" if (/vert/);
	$previous=$_;
}
#v-

Na przykład tak, chociaż zaraz Ci ktoś jednolinijkowca wklei ;)

pozdr,
fEnIo
-- 
  ,''`.  Bartosz Fenski | mailto:fenio@debian.org | pgp:0x13fefc40 | irc:fEnIo
 : :' :       32-050 Skawina - Glowackiego 3/15 - malopolskie v. - Poland
 `. `'           phone:+48602383548 | proud Debian maintainer and user
   `-            http://fenski.pl | xmpp:fenio@jabber.org | rlu:172001
Technical Details
Message-ID: <slrnhva9ub.5je.fenio@serwer.fenski.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!serwer.fenski.pl!not-for-mail
References: <slrnhv9krv.q2.tomjas@krusty.localdomain> <ht2lp9$uan$1@solani.org> <slrnhv9nc7.6re.tomjas@krusty.localdomain> <ht2mkt$uan$2@solani.org> <slrnhv9pgv.7eh.tomjas@krusty.localdomain> <ht2slh$djl$1@solani.org> <slrnhva99s.hu6.tomjas@krusty.localdomain>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!serwer.fenski.pl!not-for-mail
From: Bartosz Feński aka fEnIo <fenio@debian.org>
Newsgroups: pl.comp.lang.perl
Subject: Re: Jak wyciagnac linie z pliku?
Date: Thu, 20 May 2010 14:15:07 +0200
Organization: Front Wyzwolenia Krasnali Ogrodowych
Lines: 40
Message-ID: <slrnhva9ub.5je.fenio@serwer.fenski.pl>
References: <slrnhv9krv.q2.tomjas@krusty.localdomain> <ht2lp9$uan$1@solani.org> <slrnhv9nc7.6re.tomjas@krusty.localdomain> <ht2mkt$uan$2@solani.org> <slrnhv9pgv.7eh.tomjas@krusty.localdomain> <ht2slh$djl$1@solani.org> <slrnhva99s.hu6.tomjas@krusty.localdomain>
Reply-To: fenio@debian.org
NNTP-Posting-Host: serwer.fenski.pl
Mime-Version: 1.0
X-Trace: news.onet.pl 1274357762 1475 188.165.20.211 (20 May 2010 12:16:02 GMT)
X-Complaints-To: niusy@onet.pl
NNTP-Posting-Date: Thu, 20 May 2010 12:16:02 +0000 (UTC)
User-Agent: slrn/pre1.0.0-18 (Linux)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit