|
|
|||||||
![]() |
Zeilenumbruch nach max. X Zeichen
Ein Text in einer Variable soll nach maximal X Zeichen bei einem Leerschlag getrennt werden (z.B. bei einem Mail). Wie kann man das am einfachsten machen?
Regular Expressions bieten auch dafür eine Möglichkeit:
$text="Beliebiger Text\nMit teilweise sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr,".
"sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr langen Zeilen\nWieder einmal eine neue Zeile...";
my @splittedText=split(/\n/,$text);
foreach (@splittedText) {
if (length($_) > 70) {
1 while s/^(?=[^>|:].{70,})(.{0,69}[^ ]|[^ \n]+?) +(?=[^ \n])/$1\n/m;
}
print "$_\n";
}
Dieser Text wird nach maximal 70 Zeichen umbrochen. Die roten Zahlen müssen durch den Maximal-Wert (hier 70), bzw. den Wert eines davor (hier 69) ersetzt werden.
Dieser Artikel wurde zugesandt von: Jürg Sommer, knowledge@cgicorner.ch
|
||||||