首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Perl中检查字符串是否为空的正确方法是什么?

在Perl中检查字符串是否为空的正确方法是什么?
EN

Stack Overflow用户
提问于 2010-01-12 07:16:38
回答 4查看 227K关注 0票数 107

我只是使用下面的代码来检查字符串是否为空:

if ($str == "")
{
  // ...
}

对于not equals运算符也是如此。

if ($str != "")
{
  // ...
}

这似乎是有效的(我认为),但我不确定这是正确的方式,或者是否有任何不可预见的缺点。就是感觉有点不对劲。

EN

回答 4

Stack Overflow用户

发布于 2010-01-12 07:23:01

您可能希望使用"eq“而不是"==”。如果您担心某些边缘情况,您可能还希望检查是否有未定义的情况:

if (not defined $str) {

# this variable is undefined

}
票数 11
EN

Stack Overflow用户

发布于 2010-01-12 07:28:00

正如一些人已经提到的,eq在这里是正确的运算符。

如果您在脚本中输入use warnings;,就会收到有关这方面的警告(以及许多其他有用的东西);我也推荐使用use strict;

票数 9
EN

Stack Overflow用户

发布于 2010-01-12 07:20:53

除了使用CPAN之外,Perl中并不存在“适当”的方式来做任何事情的概念。

无论如何,这些都是数值运算符,您应该使用

if($foo eq "")

if(length($foo) == 0)
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2045644

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档