This may be possible duplicate of many existing questions, one of them is : 
[This](https://stackoverflow.com/questions/110332/filtering-nsarray-into-a-new-nsarray-in-objective-c)

or other links that I have searched so far.

I'm working on an application in which I'm displaying People Information like thier Location, Name, Image, Gender, Phone Number etc.

I am getting this data through xmls. From Parsing I feed my NSMutableArray and display the details on my table view.

I want to Apply Search on People NAME in this array.

How do I get People Names from these ?

Here is the code I am using : 

For displaying details in Table View : 

```
 if (cell == nil) 
 {
   NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"CustomCellDetail" owner:self options:nil];

   id firstObject =[topLevelObjects objectAtIndex:0];

   if ( [ firstObject isKindOfClass:[UITableViewCell class]] )
    cell = (CustomCellDetail *)firstObject;

     ParsingItem *item=[self.arrayPeoples objectAtIndex:indexPath.section];

     cell.lblUserName.text=[item.mdictXMLTagsData valueForKey:@"UserName"];
     cell.lblStatus.text=[item.mdictXMLTagsData valueForKey:@"StatusMessage"];
     cell.lblAge.text=[item.mdictXMLTagsData valueForKey:@"Gender"];

```

and for fetching results I found that only string can be searched from nsmutable array so I applied search as follows : 

```
  -(void)FetchSearcheRecordsFromArray
  {
      self.filteredArray = self.arrayPeoples;

      NSLog(@"string :%@",strSearchingText);

      NSPredicate *Predicate = [NSPredicate predicateWithFormat:@"SELF contains[c] %@",self.strSearchingText];

      NSLog(@"string :%@",Predicate);

      [self.filteredArray filterUsingPredicate:Predicate];

      NSLog(@"Array count is : %d",[self.filteredArray count]);

      if ([self.filteredArray count] <= 0 )
      {
           self.lblNoRecordsFound.hidden = NO;
      }
      else 
      {
           self.lblNoRecordsFound.hidden = YES;
      }

      [self.tblViewPeople reloadData];
  }

```

My Application Crashes on line : 

```
[self.filteredArray filterUsingPredicate:Predicate];

```

As I know that the string is not present in my array and there is a parsing item.

I want to apply search on only Names of the people but I dont know how to get only name from array.

How can I achieve this ???

Any work arounds??

I need this to be done but dont know how !!

Please help !