我有NSMutableArray
填充NSTableView
。它包含字符串:dog, cat, duck, cow, moose, nil
。我在NSTableView上方有一个搜索栏,想要在tableview中选择与我搜索的字符串(在搜索栏中)最匹配的项目。有没有简单的方法来做到这一点?
答案 0 :(得分:1)
您可以计算搜索字符串与表格中字符串之间的距离度量。然后选择距离值最小的元素。
计算距离测量的一种方法是使用Levenshtein距离算法。可以找到一个实现here。它适用于我的情况。
也可以搜索部分匹配:
if ( [titleWord rangeOfString:searchWord options:NSCaseInsensitiveSearch].length > 0 )
或者,如果您想找到以搜索字符串开头的单词:
if ( [titleWord.lowercaseString hasPrefix:searchWord.lowercaseString] )