One approach would be to simply compare both fields with a search bar:
var people = [ ["First": "JohnMusk", "Last": "Doe"], ["First": "Steve", "Last": "Jobs"], ["First": "Elon", "Last": "Musk"] ] var searchText = "Musk" var searchResults = people.filter{ var firstName = $0["First"]!.lowercaseString var lastName = $0["Last"]!.lowercaseString return firstName.rangeOfString(searchText.lowercaseString) != nil || lastName.rangeOfString(searchText.lowercaseString) != nil }
This gives me this result:
2015-11-18 18:19:47.691 MyPlayground[36558:7031733] ( { First = JohnMusk; Last = Doe; }, { First = Elon; Last = Musk; } )
I believe what you want.
source share