private static string ReplaceNumberPattern(string pattern, int value) { int firstPart = pattern.IndexOf("{#", StringComparison.Ordinal); int lastPart = pattern.IndexOf("#}", StringComparison.Ordinal) + 2; int numDigits = lastPart - firstPart - 2; return pattern.Substring(0, firstPart) + Convert.ToString(value, 10).PadLeft(numDigits, '0') + pattern.Substring(lastPart); }