2012-02-02 8 views
1

から文字nsrangeのは、私が持っているとしましょう:IOSは終わり

this - is an - example - with some - dashes

NSRangeはの最初のインスタンスをピックアップします - rangeOfString `で「」: - 私は最後のものだけをしたい場合はどのような「」@ ?

lastIndexOfと似たようなものを探しています(JS)。 ありがとう!

答えて

6

[NSString rangeOfString: options:]に渡すことができるオプションの1つは、NSBackwardsSearch(これはあなたが見ている文字列の最後の項目を与えます)です。

2

rangeOfString方法の別の変形があります:

- (NSRange)rangeOfString:(NSString *)aString options:(NSStringCompareOptions)mask range:(NSRange)aRange 

これは、あなたが内検索する範囲を指定することができますので、あなたは、ループ内の各範囲を検索し、検索範囲から除外して再度試みることができますマッチがなくなるまで

は、あなたがやろうとしている内容に応じて、あなたが使用してより多くの運を持っているかもしれません。この:

@で区切られた各部分にあなたの文字列を分割します
NSArray *components = [string componentsSeparatedByString:@" - "]; 

「 - 」と、それらを返しますarray - 最後のものは[components lastObject]を使って取得できます。

さらに別のオプションは、文字列をループするために設計されたNSScannerを使用してトークンを取得することです。

関連する問題