Tom99+2008-10-04 14:12:17--Cool, danke ich werd mir die Intro mal durch lesen.
Die Lösung von Matthias war genau das was ich gesucht habe.
Für was steht das m! und das !xg ?
Mhm irgendwie gehts doch nicht so wie ich wollte.
Ich habs jetzt so gelöst:
local @array = ($logline =~ /([^\\]+)\\([^\\]+)/g);
local %playerinfo;
for ($i = 0; $i <= @array; $i += 2)
{
$playerinfo{$array[$i]} = $array[$i+1];
}
print Dumper \%playerinfo;
Das sieht seltdam aus. Verwendest du strict und warnings?
Ein Ansatz:
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;
use Data::Dumper qw/Dumper/;
use FileHandle;
my $ logfile = '/path/2/logfile.log';
my $fh = new FileHandle;
if ($fh->open("< file")) {
while( my $line = $fh->getline() ) {
print "zeile: " . $line; # mal anschauen, was überhaupt in der Zeile steht
# jetzt deinen hash bauen
# deine Arbeit hier :)
}
$fh->close();
}else{
die("Konnte die Datei nicht öffnen: $!");
}