私は理解できない問題を抱えています。
文字列に対してrangeOfStringメソッドを実行しようとしていますが、文字列が見つからなかったかどうかを判断する方法がわかりません。例えば:
NSRange range = [@"abc" rangeOfString:@"d" options:NSCaseInsensitiveSearch range:NSMakeRange(0,3)];
明らかに、「d」は文字列「abc」に含まれていません。これをできるようにしたい:
if(the range is empty since "d" is not in "abc")
//do something
これのコードは何ですか?
ありがとう!!
NSStringのドキュメントから
-[NSString rangeOfString]
戻り値
AStringの最初の出現のレシーバーでの位置と長さを与えるNSRange構造。戻り値{NSNotFound、0} aStringが見つからないか空の場合(@ "")。
次のようになります。
if ([@"abc" rangeOfString:@"d"].location == NSNotFound){
//Do something
Appleが承認した方法です。
編集:
私は本当に悪いタイプミスをして、それを修正しました、ありがとう、Kalle。
範囲の長さを確認してください。ゼロ以外の場合、見つかりました。