Подтвердить что ты не робот

Как найти подстроку между двумя строками?

У меня есть строка "Привет, как... вы"

Я хочу найти подстроку после того, как и до вас..

Как это сделать в объективном c?

4b9b3361

Ответ 1

Найдите диапазон двух строк и верните подстроку между:

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];

Ответ 2

Вы можете использовать метод NSString substringWithRange

Пример

NSString *[email protected]"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

Ответ 3

используйте SubstringTOIndex и SubstringFromIndex функции NSString. Где SubstringFromIndex дает вам string из переданного вами индекса, а функция SubstringTOIndex дает вам string до индекса, который вы передали.

Также попробуйте substringWithRange функцию, которая возвращает string между пройденным диапазоном.

Ответ 4

Используйте substringWithRange...

NSString* substring = [originalString substringWithRange:NSMakeRange(3, originalString.length-6)];