User since
2003-09-11
67
Artikel
BenutzerIn
Ich habe eine mehrzeilige Text-Datei und möchte diese ab dem $x Zeichen $y Zeilen einlesen, weiss aber nicht, wieviele Zeichen in einer Zeile sind. Wie mach ich das?
User since
2003-08-04
7321
Artikel
ModeratorIn
mit seek (perldoc -f seek) kannst du du zum x-ten Zeichen springen; dass ist jetzt aber Zeilen ubanhängig...
ab dann einfach mit IO::File->getline weiterlesen... und zwar y-mal!
User since
2003-08-14
2022
Artikel
BenutzerIn
In einfachen Fällen kann auch ein Skript wie das folgende helfen:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/usr/bin/perl
use strict;
use warnings;
my $cur = -10;
my $x = qr'Begin';
my $y = 3;
while (<DATA>) {
$cur = $. if /$x/;
print if ($.>$cur and $.<=$cur+$y);
}
_ _DATA_ _
Hello
Welt Begin Test
ALPHA
BETA
GAMMA
DELTA
User since
2003-09-11
67
Artikel
BenutzerIn
Danke für Eure schnelle Antwort! IO::File ist ne elegante Lösung. Da meine Aufgabe relativ einfach ist, zähle ich die Zeichen und Zeilen gleichzeitig und ermittle dadurch die Position des Zeigers. Also viele Wege führen zum Ratzingers Golf ;-)
User since
2003-08-04
7321
Artikel
ModeratorIn
[quote=x-man,06.05.2005, 21:46]Also viele Wege führen zum Ratzingers Golf ;-)[/quote]
188.938,88 um genau zu sein! :)