1 つの可能なアプローチ:
rangeOfString と rangeOfCharacter 呼び出しの (実際にはやや面倒な) 使用法をつなぎ合わせて、次のようなメソッドを記述できると仮定しましょう。
-(NSInteger)numberOfMatchesFoundInString:(NSString*)inputString;
文字列を渡すことができ、見つかった一致の数に基づいて 0,1,2... を返します。
この便利な結果を非常に読みやすい方法で使用するには、switch ステートメントを使用できます。
NSInteger* matches = [self numberOfMatchesFoundInString:someString];
switch (matches) {
case 0:
//execute some code here for when no matches are found
break;
case 1:
//execute some different code when one match is found
break;
case 2:
//you get the idea
break;
default:
//some code to handle exceptions if the numberOfMatchesFoundInString method went horribly wrong
break;
もちろん、機能的には呼び出しと変わらないと言う人もいます。
if (someCondition) {
//do some stuff
}
else if (someOtherCondition) {
//do some different stuff
}
etc...
しかし、実際には、どちらかを機能させることができます。