我正在尝试优化对大型文本文件(300-600mb)中字符串的搜索。使用我目前的方法,花费的时间太长。
目前我一直在使用IndexOf搜索字符串,但是用字符串为每一行建立索引所花费的时间太长(20s)。
如何优化搜索速度?我已经尝试过Contains(),但这也很慢。有什么建议么?我在考虑正则表达式匹配,但我没有看到它有显着的速度提升。也许我的搜索逻辑有缺陷
例子
while ((line = myStream.ReadLine()) != null)
{
    if (line.IndexOf(CompareString, StringComparison.OrdinalIgnoreCase) >= 0)
    {
        LineIndex.Add(CurrentPosition);
        LinesCounted += 1;
    }
}