Sourabh Sharma
Sourabh Sharma

Reputation: 8322

localizedCaseInsensitiveContainsString for iOS 7

How can i use localizedCaseInsensitiveContainsString for iOS 7?

Because ragneOfString method does not give me expected result. But localizedCaseInsensitiveContainsString method gives me desired result.

And localizedCaseInsensitiveContainsString is not avialable in iOS7. I tried this but it does't give me desired result

 if([session.sessiontitle rangeOfString:searchtext options:NSCaseInsensitiveSearch].location!=NSNotFound 
               || [session.roomname rangeOfString:searchtext options:NSCaseInsensitiveSearch].location!=NSNotFound
               || [session.speakername rangeOfString:searchtext options:NSCaseInsensitiveSearch].location!=NSNotFound
               || [session.speakerprofile rangeOfString:searchtext options:NSCaseInsensitiveSearch].location!=NSNotFound)
            {
                [sessionArray addObject:session];
            }

Thanks in advance!

Upvotes: 1

Views: 551

Answers (1)

David Halter
David Halter

Reputation: 11

You need to use the localized method.

[session.sessiontitle rangeOfString:searchtext options: NSCaseInsensitiveSearch range:NSMakeRange(0, session.sessiontitle.length) locale:[NSLocale currentLocale]].location!=NSNotFound

UPDATE:
This works:
NSArray *allNames=@[@"does jenny work",@"JENNy works",@"works with JEnny",@"jack",@"ram",@"jhon"]; NSMutableArray *results=[NSMutableArray new]; for (NSString *name in allNames) { if ([name rangeOfString:@"jenny" options:NSCaseInsensitiveSearch range:NSMakeRange(0, name.length) locale:[NSLocale currentLocale]].location!=NSNotFound) { [results addObject:name]; } } NSLog(@"results :>%@<",results);
results :>( "does jenny work", "JENNy works", "works with JEnny" )<

Upvotes: 1

Related Questions