在NSString对象中查找一个子string
我有一个NSString对象,我想通过查找一个单词来创build一个子string。
例如,我的string是:“狗吃了猫”,我想让程序find“吃”这个词,并将一个子string作为“猫”。
有人可以帮助我或给我一个例子吗?
谢谢,
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的同样的解决scheme
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。 如果你的string包含这个字符,它会返回true,否则返回false。
NSString *theNewString = [receivedString substringFromIndex:[receivedString rangeOfString:@"Ur String"].location];
您可以search一个string,然后将search到的string转换为另一个string…
-(BOOL)Contains:(NSString *)StrSearchTerm on:(NSString *)StrText { return [StrText rangeOfString:StrSearchTerm options:NSCaseInsensitiveSearch].location==NSNotFound?FALSE:TRUE; }
您可以使用NSString类中提供的两种方法中的任何一种,如substringToIndex:
和substringFromIndex:
传递一个NSRange作为你的长度和位置,你将得到所需的输出。