public override string Process(string text, ISubstitutionContext context)
        {
            var res = text;

            foreach (Match m in Regex.Matches(text, Pattern))
            {
                try
                {
                    var value = context.GetContextValue(m.Groups[1].Value);
                    if (value != null)
                    {
                        res = res.Replace(m.Value, value);
                    }
                }
                catch (Exception ex)
                {
                    Logger.WriteTrace(ex, SeverityEnum.Error);
                }
            }
            return(res);
        }