如何同时按名字和姓氏进行搜索 [英] How to search by both first name and last name

查看:65
本文介绍了如何同时按名字和姓氏进行搜索的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在iphone应用程序上执行搜索屏幕(以搜索名称列表),在这里我需要同时按名字和姓氏进行搜索

I am doing a search screen (to search list of names) on my iphone app , where i need to search by both first name and last name

说我的搜索表视图包含如下名称

say my search tableview contains names like follows

Ravi Kiran 
sujay huilgol
harry potter 

我的搜索仅适用于名字,即如果我搜索 Ra ,它将显示 Ravi Kiran ,但是当我搜索 Kiran 时不显示 Ravi Kiran

my search is working for only first name i.e if i search for Ra it ill show Ravi Kiran but when i search for Kiran its not displaying Ravi Kiran

我的 filterContentForSearchText 就是这样

my filterContentForSearchText is like this

- (void)filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope
{
    [self.arrSearhResults removeAllObjects]; // First clear the filtered array.

    // Search the main list for Usenames whose type matches searchText; add items that match to the filtered array.

    for(NSString * strUserName in arrUserInfo )
    {
        NSComparisonResult result = [strUserName compare:searchText options:(NSLiteralSearch|NSDiacriticInsensitiveSearch) range:NSMakeRange(0, [searchText length])];
        if (result == NSOrderedSame)
        {
            // Update the filtered array based on the search text and scope.
            [self.arrSearhResults addObject:strUserName];
            //NSLog(@"arrSearhResults %@",arrSearhResults);
        }
    }

}

有人可以帮我吗.....提前谢谢!

could anybody help me out please..... thanx in advance!

推荐答案

使用 rangeOfString 搜索整个字符串

 for(NSString * strUserName in arrUserInfo )
{
  NSRange range = [strUserName rangeOfString:searchText options:(NSCaseInsensitiveSearch|NSDiacriticInsensitiveSearch)];
  if (range.length > 0)
  {
    [self.arrSearhResults addObject:strUserName];
  }
}

这篇关于如何同时按名字和姓氏进行搜索的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆