作者liyih ()
看板Perl
标题Re: [问题] print时依字元长度自动换行?
时间Wed Jun 2 16:31:57 2010
my $str = "blahblahblahblahblahblah.........";
my $WRAP = qr/(.{0,10}(?{print "$1\n" if $1;}))*/;
$str =~ /$WRAP/g;
参考一下
http://pacific-design.com/perl/perlretut.html
A bit of magic: executing Perl code in a regular expression
※ 引述《cutecpu (可爱中央处理器)》之铭言:
: #!/usr/bin/perl -w
: $_='aaaaaaaaabbbcddddd........zzzz';
: s/(.{10})/$1\n/g;
: print;
: ※ 引述《adu (^_^)》之铭言:
: : 原始资料以hash的方式储存,每个key是name,value是内容
: : ex:
: : name1 aaaaaaaaabbbcddddd........zzzz
: : name2 dddddddddddddweeeeeeeeeeeeeeeeennn....ssss
: : ...
: : 现在想把这些print出来,当长度大於10就自动增加"\n"
: : aaaaaaaaab
: : bbcddddd..
: : ......zzzz
: : dddddddddd
: : dddweeeeee
: : eeeeeeeeee
: : ennn....ss
: : ss
: : 很阳春的想法是先把第一次print的资料">Output1"
: : 然後再open Output1,
: : 再用
: : while(<>){
: : chomp;
: : if(length($_)>10){
: : print "\n";
: : }
: : }这样的方式:p
: : 请教板大们有没有更好的方法呢?
: : 谢谢回应!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.114.64.130