using uCalcSoftware;

var uc = new uCalc();
var t = new uCalc.Transformer();
t.Text = "Log: INFO message. Log: ERROR alert. Log: INFO another message.";

var infoRule = t.Pattern("Log: INFO {msg}.").SetTag(1); // Tag 1 for INFO
var errorRule = t.Pattern("Log: ERROR {msg}.").SetTag(99); // Tag 99 for ERROR

t.Find();

foreach(var match in t.Matches) {
   var ruleTag = match.Rule.Tag;
   if (ruleTag == 1) {
      Console.WriteLine($"Found informational log: {match.Text}");
   }
   if (ruleTag == 99) {
      Console.WriteLine($"!!! Found CRITICAL error: {match.Text} !!!");
   }
}