2012-06-12 173 views
5

是否有一種方法來驗證NSString是否沒有字符? 沒有字符的字符串的例子可以是:IOS:驗證一個字符串是否爲空字符串

@「」或@「」或@「\ n」或@「\ n \ n」,我想把這些字符串作爲空字符串並打印一個nslog,這些是emty,我應該使用什麼樣的控制?

回答

7

您可以使用此測試:

if ([[myString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] length] == 0) { 
    // The string is empty 
} 
+0

+1我不知道這個功能;你的回答比我的好:) – WendiKidd

+0

@WendiKidd謝謝!作爲一個快速的offtopic,我不知道誰低估了你的答案,但我想我知道爲什麼:你使用字符串常量'@「」'和'@「\ n」'而不是字符常量''''和'' \ n'';解決這個問題應該將您的解決方案轉變爲完全正常工作。 – dasblinkenlight

+0

啊!愚蠢的我,我沒有注意到!感謝您指出了這一點。我修好了,謝謝:) – WendiKidd

0

您可以遍歷字符串中的每個字符,並檢查它是空格(「」)還是換行符(「\ n」)字符。如果不是,則返回false。否則,如果您搜索整個字符串並且沒有返回false,則它是「空的」。

事情是這樣的:

NSString* myStr = @"A STRING"; 
for(int i = 0; i < [myStr length]; i++) 
{ 
    if(!(([myStr characterAtIndex:i] == @' ') || ([myStr characterAtIndex:i] == @'\n'))) 
    { 
     return false; 
    } 
}