public TicketRule(string line) { var match = RuleRegex.Match(line); if (!match.Success) { throw new Exception("No match for rule."); } Name = match.Groups[1].Value; ValidRanges.Add(new Range() { MinValue = int.Parse(match.Groups[2].Value), MaxValue = int.Parse(match.Groups[3].Value), }); ValidRanges.Add(new Range() { MinValue = int.Parse(match.Groups[4].Value), MaxValue = int.Parse(match.Groups[5].Value), }); }
public bool InRange(int value) => ValidRanges.Any(r => r.InRange(value));