text filetieren
hallo!
ich habe einen textblock mit einer beliebigen anzahl zeichen, etwa 200.
nun soll der text in einzelne blöcke von maximal 60 zeichen geteilt werden.
ich mach das mit
foreach my $string ( [at] textblock){
if (length($ausgabe) + length($string) <= 60)
{$ausgabe .= "$string ";}
else
{$ausdruck .= $ausgabe;}
das problem dabei ist, dass ich nicht draufkomme, wie ich es anstelle, dass
ich zu einer ausgabe komme, wenn der string nicht 60 zeichen lang wird, und
wie
ich den 'restlichen' text (zeichen 61 ... 80) rausbekomme.
greets
-/--\-
alex
Re: text filetieren
Alexander Kainz schrieb:
> hallo!
>
> ich habe einen textblock mit einer beliebigen anzahl zeichen, etwa 200.
>
> nun soll der text in einzelne blöcke von maximal 60 zeichen geteilt werden.
>
> ich mach das mit
>
> foreach my $string ( [at] textblock){
> if (length($ausgabe) + length($string) <= 60)
> {$ausgabe .= "$string ";}
> else
> {$ausdruck .= $ausgabe;}
>
> das problem dabei ist, dass ich nicht draufkomme, wie ich es anstelle, dass
> ich zu einer ausgabe komme, wenn der string nicht 60 zeichen lang wird, und
> wie
> ich den 'restlichen' text (zeichen 61 ... 80) rausbekomme.
Ist das interesse akademischer Natur, oder reicht ein Hinweis auf
Text::Wrap?
-Christian
Re: text filetieren
Moin Alex...
wie wärs mit einem:
$string =~ s/(.{60,60})/$1\n/g;
print $string;
das sollte deinen string in 60er-Blöcke zerhackstückeln
ist der string kürzer, matcht der ausdruck nicht mehr und du
printest einfach den string...
Gruss
Jan
PS: sorry für die 2 Anglizismen in meinem Posting ;-)
Alexander Kainz schrieb:
> hallo!
>
> ich habe einen textblock mit einer beliebigen anzahl zeichen, etwa 200.
>
> nun soll der text in einzelne blöcke von maximal 60 zeichen geteilt werden.
>
> ich mach das mit
>
> foreach my $string ( [at] textblock){
> if (length($ausgabe) + length($string) <= 60)
> {$ausgabe .= "$string ";}
> else
> {$ausdruck .= $ausgabe;}
>
> das problem dabei ist, dass ich nicht draufkomme, wie ich es anstelle, dass
> ich zu einer ausgabe komme, wenn der string nicht 60 zeichen lang wird, und
> wie
> ich den 'restlichen' text (zeichen 61 ... 80) rausbekomme.
>
>
> greets
> -/--\-
> alex
>
>