高手请进 求 perl 分隔字符串的方法,其中分隔符不是一种

有没有匹配任意多个相连的换行符的方法呢?
if($defined($_)){
                         print"null";
                         }else{
                          print;
                         }
                         print"\n";
                }
还是不行咧~~
如果字符串全是回车  例如:\n \n \n
用 @a = split(/\s/,字符串);
@a中的值是否都是undef呢?还是""呢?如何判断啊,晕了都~
这种情况下,还是找本入门书好好看看,病急乱投医,别人说了你也不一定懂.
你可以把你需要的那些分隔符替换成单一的字符,比如空格,然后用split吧?


QUOTE:
原帖由 mazelmiler 于 2008-7-3 10:07 发表
\s到是接近但是如果例如这样
a 空格空格 b 回车 c 缩进缩进缩进缩进 d 空 e 回车回车 f
这样的话会出现N多空值

my @words = split /\s+/, $str;

另外, 如果你要提取的字符比较规律的话, 可以考虑正则:
类似my @words = $str =~ /\w+/g;
多谢您!
你有 eq 代替==。


QUOTE:
原帖由 mazelmiler 于 2008-7-3 10:24 发表
因为我在判断$_是否为空时总是出错Use of uninitialized value in numeric eq (==) at readXml.pl line 76.
我是这样写的
foreach (@a){
                     #   print;
                       if($_==u ...

用eq 代替== 应该就可以了。