Schrift
[thread]7059[/thread]

word wrap



<< >> 8 Einträge, 1 Seite
esskar
 2005-06-20 02:17
#55591 #55591
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
wollte wörter länger als 20 zeichen ein leerzeichen verpassen...
was mach ich falsch?
Code: (dl )
1
2
3
4
5
sub WordWrap {
my ($text) = @_;
$text =~ s!(\s|^)([\S]{20,}?)([\S]*)(\s|$)!$1$2 $3$4!g;
return $text;
}
betterworld
 2005-06-20 04:11
#55592 #55592
User since
2003-08-21
2613 Artikel
ModeratorIn

user image
Statt {20,}? wuerde ich einfach {20} schreiben.

Problematischer wird es dann, wenn Du nach 40 Buchstaben auch wieder ein Leerzeichen machen moechtest.
esskar
 2005-06-20 12:12
#55593 #55593
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
hab es gelöst
Code: (dl )
1
2
3
4
5
sub WordWrap {
my ($text) = @_;
$text =~ s!(\S{20})(\S)!$1 $2!g;
return $text;
}
Taulmarill
 2005-06-20 12:56
#55594 #55594
User since
2004-02-19
1750 Artikel
BenutzerIn

user image
hm, der erste teil ist auch 20 zeichen lang, alle weiteren 21. teste mal folgendes beispiel:
Code: (dl )
1
2
3
4
5
6
my $foo = join("",0..9)x10;
my $bar = $foo;
$foo =~ s!(\S{20})(\S)!$1 $2!g;
$bar =~ s!(\S{20})!$1 !g;
print "foo:\n$foo\n";
print "bar:\n$bar\n";
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B
esskar
 2005-06-20 13:00
#55595 #55595
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
stimmt... danke.
mir ging es eigentlich nur um Beitrag 2232 auf
http://tvk.teamballer.de/run.pl?action=guestbook
Taulmarill
 2005-06-20 15:35
#55596 #55596
User since
2004-02-19
1750 Artikel
BenutzerIn

user image
so was ähnliches dachte ich mir schon. wobei ich die lösung von perlmonks.com am besten finde. da werden umgebrochene zeilen mit einem roten + am ende gekennzeichnet.
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B
esskar
 2005-06-20 22:10
#55597 #55597
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
[quote=Taulmarill,20.06.2005, 13:35]wobei ich die lösung von perlmonks.com am besten finde.[/quote]
kennst du den regexp?
Strat
 2005-06-21 14:08
#55598 #55598
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
@esskar: geh mal auf perlmonks.org und frage demerphq... der hat z.B. zugriff auf den code
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
<< >> 8 Einträge, 1 Seite



View all threads created 2005-06-20 02:17.