Hallo opi,
my $string = "123456789012 ww "; # ww zum Testen der entfernten Leerzeichen
my $bloecke = [];
my $laenge = length($string);
for (my $i = 0 ; $laenge > $i ; $i += 4) {
my $val = substr($string,$i,4);
$val =~ s/^\s+//;
$val =~ s/\s+$//;
push @$bloecke, $val;
}
foreach (@$bloecke) {
print "<$_>\n";
}
ich weiß zwar nich, was du da für komische Handstände und Flickflacks machst, aber effizienter geht es z.B. so:
~~~perl
#!/usr/bin/perl -T
use strict;
use warnings;
my $string = "123456789012 ww ";
# String in 4er Zeichenblöcke ohne Leerzeichen zerlegen
my @bloecke = grep { /^\S+$/ } split /(\S{1,4})/, $string;
# Ausgabe
print join ", ", @bloecke;
print "\n";
Gruß,
Benne
--
ie:% fl:( br:> va:) ls:> fo:| rl:° ss:) de:[ js:| ch:| mo:} zu:)
ie:% fl:( br:> va:) ls:> fo:| rl:° ss:) de:[ js:| ch:| mo:} zu:)