Ответ 1
NSRange range = [string rangeOfString:@"ate"];
NSString *substring = [[string substringFromIndex:NSMaxRange(range)] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
У меня есть объект NSString, и я хочу создать подстроку из него, разместив слово.
Например, моя строка: "Собака съела кошку", я хочу, чтобы программа находила слово "съела" и создала подстроку, которая будет "кошкой".
Может кто-нибудь помочь мне или дать мне пример?
Спасибо,
Sagiftw
NSRange range = [string rangeOfString:@"ate"];
NSString *substring = [[string substringFromIndex:NSMaxRange(range)] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
NSString *str = @"The dog ate the cat";
NSString *search = @"ate";
NSString *sub = [str substringFromIndex:NSMaxRange([str rangeOfString:search])];
Если вы хотите обрезать пробелы, вы можете сделать это отдельно.
Как насчет этого? Это почти то же самое. Но, может быть, смысл NSRange легче понять для новичков, если он написал так.
Наконец, это же решение jtbandes
NSString *szHaystack= @"The dog ate the cat";
NSString *szNeedle= @"ate";
NSRange range = [szHaystack rangeOfString:szNeedle];
NSInteger idx = range.location + range.length;
NSString *szResult = [szHaystack substringFromIndex:idx];
Попробуйте это.
BOOL isValid=[yourString containsString:@"X"];
Этот метод возвращает true или false. Если ваша строка содержит этот символ, она возвращает true, а в противном случае возвращает false.
NSString *theNewString = [receivedString substringFromIndex:[receivedString rangeOfString:@"Ur String"].location];
Вы можете найти строку, а затем получить искомую строку в другую строку...
-(BOOL)Contains:(NSString *)StrSearchTerm on:(NSString *)StrText
{
return [StrText rangeOfString:StrSearchTerm options:NSCaseInsensitiveSearch].location==NSNotFound?FALSE:TRUE;
}
Вы можете использовать любой из двух методов, предоставляемых в классе NSString, например substringToIndex:
и substringFromIndex:
. Передайте ему NSRange как длину и местоположение, и вы получите нужный результат.