Поиск похожих строк без учета регистра - iPhone - PullRequest
2 голосов
/ 20 августа 2009

В моем приложении есть tableView и панель поиска.

У меня есть массив NSMutable для заполнения данных в tableView.

Теперь, какие бы пользователи ни вводили в строке поиска - данные должны быть соответственно отфильтрованы, а tableView должен быть перезагружен.

Я реализовал следующий код в моем приложении для textField resignFirstResponder.

Мой вопрос в этом коде.

-(BOOL)textFieldShouldReturn:(UITextField*)txt
{
      [txt resignFirstResponder];
      // on textfield resign searchData will be called 
      [self searchData];
      return YES;
}
-(void)searchData
{
       // N -> total elements & i for loop
       NSInteger n=[CategoryDtlArray count],i;
       //CategoryDtl is my custom class & it's objects are stored in my array
       CategoryDtl *tmpCat;
       // dtl string -> which is needed for comparison
       NSString *dtl;
       for (i=0; i<n; i++)
       {
               // got the object from array
               tmpCat=(CategoryDtl*)[CategoryDtlArray objectAtIndex:i];
               // got the description from the object for comparison  
               dtl=[NSString stringWithString:tmpCat.Tip_Description];
               // string to search
               NSString *strSrch=[NSString stringWithString:txtSearch.text];
               // now I don't know how to check my object's String
               // is starting with search string or not?
               // if it starts with search string -> it should be displayed in table
               // else not.
               // "How to implement this?"
               // String comparison without case sensitivity
       }
}

Заранее спасибо за помощь.

Ответы [ 2 ]

2 голосов
/ 20 августа 2009

Это помогает?

if ([dtl hasPrefix:strSrch])  
{  
    //  match!
}  
0 голосов
/ 21 августа 2009

См. NSFray -filteredArrayUsingPredicate :. Вы передадите этот объект NSPredicate, который сравнивает свойства строки объектов массива с соответствующим строковым свойством, используя сравнение без учета регистра / диакритический знак.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...