-1

文字列からSubStringを取得しようとしています

これは私が呼んでいるメソッドです

-(NSString *)subStringBetweenStrings:(NSString*)str open:(NSString*)open close:(NSString *)close
{
    if ( str == nil || open == nil || close == nil )
        return nil;

    int start = [str rangeOfString:open].location;
    if (start != -1)
    {
        int end = [str rangeOfString:close].location;
        if ( end != -1)
        {
            return [str substringFromIndex:start]; // DONT WANT
        }
    }
    return nil;       
}

私は持っていますstart point、そして私は持っていEnd pointます。returnのような開始インデックスと終了インデックスからsubStringを取得するにはどうすればよいですか?[ str subStringWithRange:(start, end)];

4

1 に答える 1

5

ニッチピッキング..。

  • に置き換えるint start、それが定義されNSUIntegerている方法です、NSRange location
  • startと比較しないでください-1NSNotFound

... 答え ...

return [str substringWithRange:NSMakeRange( start, end - start + 1 )]

于 2012-11-09T17:46:51.793 に答える