12. december 2007 - 08:10Der er
8 kommentarer og 1 løsning
Fjerne alle linie der starter med XX
Hej
Jeg sidder og er ved at sammen sætte en rapport, hvor jeg skal have inkluderet en fil. Jeg har så lige fundet ud af, at filen indeholder ca. 1500 linier hvor der står "WARNING: something".
Er der en nem og hurtig måde at fjerne de linie på? Det behøver ikke være Perl, bare det kan afvikles på en standard Linux maskine.
Jeg var ikke lige nået til hvordan jeg skulle læse filen :) Men har i mellem tiden fundet ud af at: grep -v WARNING file.txt gør lige hvad jeg har brug for.
Men takker for svaret. Point?
Synes godt om
Slettet bruger
12. december 2007 - 10:14#3
anbefaling: få fat på Programming Perl samt evt. Perl cookbook
Din egen løsning skelner ikke mellem om WARNING står i starten af linjen eller et andet sted, men det er måske i virkeligheden også lige meget når det kommer til stykket.
daleif's kode modificeret til at gøre dette:
LINE: while (my $l = <$FH> ) { next LINE if $l =~ /^WARNING/; ... }
Selv ville jeg nu nok hellere have brugt awk men det er vist et spørgsmål om smak og behag. :^)
Synes godt om
Slettet bruger
13. december 2007 - 10:14#5
next LINE if $l =~ /^\s*WARNING/;
er måske bedre, ved ikke lige hvilket program det var der lavede filen
@daleif - tak for uddybningen. Jeg har læst mange Perl-bøger gennem tiden, men ikke lige den. Jeg erindrer heller ikke at være stødt på den praksis før, men jeg kan da sagtens se ideen. Jeg synes dog nok, at det er en anelse overkill, men never mind that.
Synes godt om
Slettet bruger
05. juni 2008 - 15:36#9
det er en rigtig god bog, med en masse gode forslag til hvordan man skriver god perl kode. Ikke bare god kode men også kode som bliver nemmere for andre at vedligeholde bagefter.
ok, jeg er ikke altid lige god til at overholde dem, men alligevel.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.