web-dev-qa-db-ja.com

2つの文字列の間の部分文字列を見つける方法は?

「こんにちは…あなた」という文字列があります

どうやってあなたの前に、サブストリングを見つけたいの。

目標cでこれを行う方法?

19
Raju

2つの文字列の範囲を見つけ、その間の部分文字列を返します。

NSString *s = @"hi how are... you";

NSRange r1 = [s rangeOfString:@"how"];
NSRange r2 = [s rangeOfString:@"you"];
NSRange rSub = NSMakeRange(r1.location + r1.length, r2.location - r1.location - r1.length);
NSString *sub = [s substringWithRange:rSub];
86
user529758

NSString substringWithRangeのメソッドを使用できます

NSString *string=@"hi how are you";
NSRange searchFromRange = [string rangeOfString:@"how"];
NSRange searchToRange = [string rangeOfString:@"you"];
NSString *substring = [string substringWithRange:NSMakeRange(searchFromRange.location+searchFromRange.length, searchToRange.location-searchFromRange.location-searchFromRange.length)];
NSLog(@"subs=%@",substring); //subs= are
9
nsgulliver

SubstringTOIndexSubstringFromIndexNSString関数を使用します。ここで、SubstringFromIndexは、渡したインデックスからstringを提供し、SubstringToIndex関数は、渡したインデックスまでのstringを提供します。

また、渡した範囲の間のsubstringWithRangeを返すstring関数も試してください。

0
Girish