首页 > 解决方案 > 使用子字符串查找 NSTableView 单元格并滚动到单元格

问题描述

我有一个 100mb 的日志文件,我按行分隔并设置为 NSArray。在我在 NSTableView 中显示文本之后。

我希望能够选择某个子字符串,找到哪个单元格具有子字符串并滚动到该单元格。

到目前为止我所拥有的:

这是保存 100mb 日志文件中的文本的数组,以行分隔。

var linesArray: NSArray = []

这是我要查找的子字符串,请记住它是子字符串。因此,该行可能包含其他文本。

var testSearchTerm: String = "1970-01-02"

我能够找到具有该值的所有行,但它返回该行并且我需要索引,以便我可以滚动到索引。

let filteredStrings = linesArray.filter { (item) -> Bool in

        let asString = item as! String
        var stringMatch = asString.range(of: testSearchTerm)
        return stringMatch != nil ? true : false

    }

如何从上面的函数中获取索引,也可以找到子字符串的第一个实例,而不是全部。现在它获取子字符串的每个实例。

标签: swiftmacosnstableview

解决方案


推荐阅读