//
//  NSString+isEmpty : 空文字列かどうか調べる
//						nil判定のためクラスメソッドで実装する必要がある
//

#import "NSString+isEmpty.h"

@implementation NSString (isEmpty)

/// @brief 文字列内容が無いかどうか調べる
/// @return YES=nilまたは空文字列である , NO=そうではない
+(BOOL)isEmpty:(NSString *)str
{
//	printSelf();
//	nslog(@"str=%@",str);
	return (str==nil||[str isEqualToString:@""]);
}

/// @brief 文字列内容が実質無いかどうか調べる(空白のみ判定付き)
/// @return YES=nilまたは空文字列または空白のみである , NO=そうではない
+(BOOL)isEmptyOrOnlySpaces:(NSString *)str
{
//	printSelf();
	// (1)空文字かどうか
	if  ([NSString isEmpty:str]) {
		return (YES);
	}
	// (2)スペースのみかどうか
	int cnt=0;
	for (int i=0;i<[str length];i++) {
		unichar c=[str characterAtIndex:i];
		if (c==' '||c==0x3000||c=='\t'||c=='\n') cnt++; // 0x3000 UTF16での全角スペース
	}
	// 全文字が空白系か改行のみだったら内容がないとみなす
	return (cnt==[str length]);
}

@end
