_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
文字列チェック
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
NSMutableCharacterSet *checkCharSet = [[NSMutableCharacterSet alloc] init];
// 半角数字の場合
[checkCharSet addCharactersInString:@"1234567890"];
// 半角英数字の場合
//[checkCharSet addCharactersInString:@"abcdefghijklmnopqrstuvwxyz"];
//[checkCharSet addCharactersInString:@"ABCDEFGHIJKLMNOPQRSTUVWXYZ"];
//[checkCharSet addCharactersInString:@"1234567890"];
if ([[filename stringByTrimmingCharactersInSet:checkCharSet] length] > 0){
// エラーの場合
}
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
大文字小文字変換
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
NSString *originalStr = @"This is Objective-C Language.";
//大文字に変換する
NSString *str = [originalStr uppercaseString];
NSLog(@"%@", str);
//小文字に変換する
str = [originalStr lowercaseString];
NSLog(@"%@", str);
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
文字列に含まれる改行文字を除去する
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
NSString *origString = @"xxxxx\nxxxxxx";
NSMutableArray *lines = [NSMutableArray array];
[selectedWord enumerateLinesUsingBlock:^(NSString *line, BOOL *stop) {
[lines addObject:line];
}];
NSString *outputString = [lines componentsJoinedByString:@""];
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
一行毎に文字列を取得する(配列)
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
NSMutableArray *lines = [NSMutableArray array];
[string enumerateLinesUsingBlock:^(NSString *line, BOOL *stop) {
[lines addObject:line];
}];
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
検索(短い方をパラメータとする。下記の場合、@"bbb"。
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
NSString *str = @"aaabbbcccddd";
NSRange range = [str rangeOfString:@"bbb"];
if (range.location != NSNotFound) {
// 有りの場合
} else {
// 無しの場合
}
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
変換
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
NSData → NSString
NSString *str= [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSString → NSData
NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
ファイルパス関連
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
// ファイル名取得
NSString *path = [NSString stringWithFormat:@"Developer/Applications/PathCheck.app"];
NSLog(@"Original = %@", path);
NSLog(@"File Name = %@", [path lastPathComponent]);
// ディレクトリパス取得
NSLog(@"Directory Path = %@", [path stringByDeletingLastPathComponent]);
// ファイル名(拡張子無)取得
NSString *fileName = [path lastPathComponent];
NSLog(@"File Name W/O Extension = %@", [fileName stringByDeletingPathExtension]);
// ファイル拡張子取得
NSLog(@"Extension of File Name = %@", [fileName pathExtension]);
// ファイル拡張子変更
NSLog(@"Path Extension Change = %@", [[fileName stringByDeletingPathExtension] stringByAppendingPathExtension:@"exe"]);
// ファイルパス構成要素一覧(NSArray)取得
NSLog(@"Path Components = %@", [path pathComponents]);
// 一時フォルダパス取得
NSTemporaryDirectory()
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
半角全角判別
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
日本語入力等の全角文字はアスキー文字列ではない為、NSStringに日本語が含まれていた場合、NOを返す。
if (![self.text canBeConvertedToEncoding:NSASCIIStringEncoding])
{
NSLog(@"全角文字が含まれています。");
}
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
NSStringからC文字列を取り出す
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
const char *utf8 = [str UTF8String];
size_t cUtf8Stringlen = strlen(utf8);
但し、この場合、UTF8でしか取り出せません。
したがって、JISとかSJISとかの他の文字列エンコーディングで取り出したい場合、以下の通り。
const char *sjis = [str cStringUsingEncoding:NSShiftJISStringEncoding];
他の文字コードの場合、以下を設定する。
NSShiftJISStringEncoding
NSISO2022JPStringEncoding
NSJapaneseEUCStringEncoding
NSUTF8StringEncoding
NSUnicodeStringEncoding
また、半角全角を識別したい場合、以下を利用することで可能?となる
const char *sjis = [str cStringUsingEncoding:NSShiftJISStringEncoding];
size_t cSjisStringlen = strlen(sjis);
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
複数行のテキストを一行単位に処理する(改行除去)
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
// テキスト情報は一行単位で要素に分解
NSMutableArray *lines = [NSMutableArray array];
[_todaysRecord.contents enumerateLinesUsingBlock:^(NSString *line, BOOL *stop) {
[lines addObject:line];
}];
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
String Conversions
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
CGAffineTransformFromString
CGPointFromString
CGRectFromString
CGSizeFromString
CGVectorFromString
NSStringFromCGAffineTransform
NSStringFromCGPoint
NSStringFromCGRect
NSStringFromCGSize
NSStringFromCGVector
NSStringFromUIEdgeInsets
NSStringFromUIOffset
UIEdgeInsetsFromString
UIOffsetFromString
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
特定の文字列を取り除く(文字列全体から)
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
NSString *str2 = @"a b c";
str2= [str2 stringByReplacingOccurrencesOfString:@" " withString:@""];
NSLog(@"%@",str2); // 出力されるのは"abc"
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
特定の文字列を取り除く(文字列の両端から)
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
NSString *str1 = @" abc ";
str1 = [str1 stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet];
NSLog(@"%@",str1); // 出力されるのは"abc"
NSString *str2 = @"a b c";
str2 = [str2 stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet];
NSLog(@"%@",str2); // 出力されるのは"a b c"
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
あるオブジェクトのクラス名を取得する
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
NSString *className = NSStringFromClass([obj class]);
NSLog(@"className:%@", className);
最終更新:2016年07月04日 09:37