Cocoa是否具有类似于.NET的String.IsNullOrEmpty的功能?

时间:2013-01-03 17:31:23

标签: .net string cocoa isnullorempty

  

可能重复:
  How do I test if a string is empty in Objective C?

我一直在查看Apple的文档中有一个相对基本的函数,我无法想象它们没有函数来查看字符串是否为空/空或空白空间。我也谷歌搜索过这个。我找到的唯一的事情是人们就如何创建自己的函数来测试空字符串提供建议。

在.NET中,我要说的只是

If (String.IsNullOrEmpty(txtTextBox.Text)) {
// Action
}

Cocoa是否与.NET的String类中的IsNullOrEmpty等效?

1 个答案:

答案 0 :(得分:7)

  

您可以查看是否[string length] == 0。这将检查它是否是a   有效但空字符串(@“”)以及如果它是nil,因为调用   nil的长度也将返回0.

编辑:在阅读完上述评论之后,我意识到我错过了你的一个问题,不仅是空/零,还有空格(技术上不是空的)。我不知道检查所有这三个条件的内置方法,但一个简单的解决方案是在测试期间修剪字符串中的空白。例如:

NSString *str = @"   ";    //3 white spaces
if([str stringByTrimmingCharacterInSet: [NSCharacterSet whitespaceCharacterSet]] length] == 0)
{
        NSLog(@"String is empty, nil or full of whitespace!");
}

结果String is empty, nil or full of whitespace

如果更符合您的需求,您也可以使用whitespaceAndNewlineCharacterSet。我建议创建一个单独的方法,例如StringIsNullOrEmpty接受字符串并执行上述测试。

来源:How do I test if a string is empty in Objective C?