unichar がアンダースコア (_) またはキャレット (^) と等しいかどうかを検出する必要があります。私は現在、次のようにしています:
unichar ch;
NSString *chAsString = [NSString stringWithFormat:@"%C", ch];
if ([chAsString isEqualToString:@"_"])
// ... do something ...
else if ([chAsString isEqualToString:@"^"])
// ... do something else...
質問 #1: この方法は安全ですか?つまり、これらの文字のすべての可能なエンコーディングをキャッチできますか?
質問 #2: これはこれを行うための最もクリーンな方法ですか? ひどくダサいようです。if (ch == 0x5F)
しかし、などよりも信頼性が高いと感じています。