|
|||||||||||||||||||||||||||
Hejsa
Jeg synes ikke du skriver så klart hvad du ønsker.
Men nedenstående burde tage de første to pladser på hver linie og gemmer
dem i arrayet @tmp.
my $LASTX = 3;
open (DB, "<$db_file_name") or &cgierr("unable to open
database:$db_file_name.\nReason: $!");
my @lines = <DB>;
close DB;
foreach $current(@lines){
$_=$current;
m/(^.*?\|)(.*?\|)(.*)/;
push(@tmp,$1);
push(@tmp,$2);
chop(@tmp);
}
----------
> From: Kim Schulz <sslug@sslug>
> To: sslug@sslug
> Subject: [PERL] dele linie ved |
> Date: 25. oktober 1999 17:26
>
> ejsa
> jeg har følgende kode i et links script jeg roder med:
> my $LASTX = 3;
> open (DB, "<$db_file_name") or &cgierr("unable to open
> database:$db_file_name.\nReason: $!");
> my @lines = <DB>;
> close DB;
> for ($i=$#lines; $i>=$#lines - $LASTX; $i--) {
> chomp $lines[$i];
> @tmp = &split_decode ($lines[$i]);
> %tmp = &array_to_hash (0, @tmp);
> $lastlink .= &site_html_link (%tmp);
> }
>
> Mit problem er at jeg ikke lige kan komme på en måde hvorpå jeg kan
> nøjes med at tage de første to punkter fra hver linie (alle punkter er
> delt med "|")
>
> her er noget fra databasefilen:
> (fra øverste linie ønsker jeg kun punkterne SuSE.... www.suse.de... En
> tysk distribution ....
>
> 16|SuSE Linux|http://www.suse.de/|24-Okt-1999|Distributioner|En Tysk
> distribution, der er ved at blive meget udbredt i Europa.|Kim
> Schulz|sslug@sslug|0|Yes|No|0|0|Yes
> 17|Yggdrasil|http://www.yggdrasil.com/|24-Okt-1999|Distributioner|en
> destribution af ældre dato.|kim schulz|sslug@sslug|0|Yes|No|0|0|Yes
> 18|KW Linux|http://www.kaiwal.com/|24-Okt-1999|Distributioner|En Thai
> Distribution bygget over Redhat|kim
> schulz|sslug@sslug|0|Yes|No|0|0|Yes
> 19|Alzza
> Linux|http://www.alzzalinux.com/|24-Okt-1999|Distributioner|Dette er en
> Koreansk Distribution|kim schulz|sslug@sslug|0|Yes|No|0|0|Yes
>
20|Apokalypse|http://www.gate.net/~mclinux/intro.html|24-Okt-1999|Distributi
oner|En
> distribution til PowerPC|kim schulz|sslug@sslug|0|Yes|No|0|0|Yes
|
||||||||||||||
|
||||||||||||||