Более быстрая замена для Regex

У меня в классе около 100 вызовов Regex, каждый вызов покрывает разные типы данных в текстовом протоколе, но у меня много файлов и на основе аналитики regex занял 88% выполнения моего кода.

Много такого типа кода:

{
  Match m_said = Regex.Match(line, @"(.*) said,", RegexOptions.IgnoreCase);
  if (m_said.Success)
  {
    string playername = ma.Groups[1].Value;
    // some action
    return true;
  }
}

{
  Match ma = Regex.Match(line, @"(.*) is connected", RegexOptions.IgnoreCase);
  if (ma.Success)
  {
    string playername = ma.Groups[1].Value;
    // some action
    return true;
  }
}
{
  Match ma = Regex.Match(line, @"(.*): brings in for (.*)", RegexOptions.IgnoreCase);
  if (ma.Success)
  {
    string playername = ma.Groups[1].Value;
    long amount = Detect_Value(ma.Groups[2].Value, line);
    // some action
    return true;
  }
}

Есть ли способ заменить Regex другим более быстрым решением?

6
задан Svisstack 20 January 2012 в 14:27
поделиться