我一直在最近与perl工作很多,但我真的不知道如何<,>,>=,=<, ne,gt
,等..字符串“数字”,“数字”我的意思是:'1.4 .5.6.7.8.0'Perl比较运算符和字符串化的“数字”
纠正我,如果我错了,下面的返回true:
if ('1.4.5' > '8.7.8');
,因为两者都将被强制为真(不是空字符串)。 但是,ne,gt
等字符串运算符如何处理这些数字?
基本上我想比较的版本号包括以下形式:
1.3.4.0.2
我可以让每个数位的数值比较,但在此之前,我ranther想知道 字符串比较运营商执行这样的字符串。
感谢,
“1.4.5.6.7.8.0”不是数字。参见[perldata](http://perldoc.perl.org/perldata.html)和[Scalar :: Util](http://search.cpan.org/perldoc?Scalar::Util)的'looks_like_number'。 – ikegami 2012-03-30 19:48:31
我说“数字” – snoofkin 2012-03-30 21:34:39
其实,你说的“数字”:«按“数字”我的意思是:'1.4.5.6.7.8.0'»。然后你用«'>'»,每边都带*号*,所以即使你说“数字”,我的评论也是适当的。 – ikegami 2012-03-30 21:58:21