我只是使用下面的代码来检查字符串是否为空:
if ($str == "")
{
// ...
}
对于not equals运算符也是如此。
if ($str != "")
{
// ...
}
这似乎是有效的(我认为),但我不确定这是正确的方式,或者是否有任何不可预见的缺点。就是感觉有点不对劲。
发布于 2010-01-12 07:23:01
您可能希望使用"eq“而不是"==”。如果您担心某些边缘情况,您可能还希望检查是否有未定义的情况:
if (not defined $str) {
# this variable is undefined
}
发布于 2010-01-12 07:28:00
正如一些人已经提到的,eq
在这里是正确的运算符。
如果您在脚本中输入use warnings;
,就会收到有关这方面的警告(以及许多其他有用的东西);我也推荐使用use strict;
。
发布于 2010-01-12 07:20:53
除了使用CPAN之外,Perl中并不存在“适当”的方式来做任何事情的概念。
无论如何,这些都是数值运算符,您应该使用
if($foo eq "")
或
if(length($foo) == 0)
https://stackoverflow.com/questions/2045644
复制相似问题