Поскольку ваши шаблоны относительно просты (как указано при редактировании), вы должны иметь возможность использовать регулярные выражения и просто читать поток построчно. Вот пример, который находит слова. (Может быть, в зависимости от того, как вы определяете «слова» :-))
var pattern = new Regex(@"\b\w+\b");
using (var reader = new StreamReader(@"..\..\TextFile1.txt"))
{
while (reader.Peek() >= 0)
{
Match match = pattern.Match(reader.ReadLine());
while (match.Success)
{
Console.WriteLine(match.Value);
match = match.NextMatch();
}
}
}
Если вы ищете что-то, что связано с переводом строк, вам нужно быть немного креативным. Добавьте их в строку поиска. Или, если многократные переводы строк значимы, создайте строку поиска в памяти с несколькими вызовами ReadLine()
, пока не будет найден не перевод строки. Затем обработайте это и двигайтесь дальше в потоке.