Thread Textstring richtig zerlegen?
(12 answers)
Opened by kami at 2012-06-12 12:07
Oder hier ein anderer Ansatz, der einfach mehrmals den Text nach einem neuen Pattern absucht.
Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 #! /usr/bin/perl use strict; use warnings; while ( my $line = <DATA> ) { # Vorbelegung mit 0 my %data = ( "Tage" => 0, "Std." => 0, "Min." => 0, ); # Jedes vorbelegte Element wird nun einzeln geprüft for my $item ( keys %data ) { # der Key wird hierbei als Textelement im Pattern verwendet if ( $line =~ m{(\d+) \Q$item\E} ) { $data{$item} = $1; } } # "formatierte" Kontrollausgabe printf "%2d D, %2d h, %2d m\n", @data{qw( Tage Std. Min. )}; } __DATA__ 3 Tage 12 Std. 3 Min. 2 Std. 4 Min. 2 Min. 7 Min. 8 Std. 9 Tage ~ Resultat hier: meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen! |