protected virtual void FormatYear(StringBuilder sb, PersonIdentifierFormatOption option) { if (option == null) { throw new ArgumentNullException(nameof(option)); } var withCentury = (option.WithCentury.HasValue && option.WithCentury.Value) || CenturySpecified; if (withCentury) { sb.Append(Century.ToString("00")); if (option.CenturySeparated) { sb.Append(option.CenturySeparationChar); } } sb.Append(TwoDigitYear.ToString("00")); }
private string Format(string expression) { switch (expression) { case "F": case "f": expression = Format("$dddd, $d $MMMM $yyyy $HH:$mm:$ss $g"); break; case "S": case "s": expression = Format("$yyyy/$MM/$dd $HH:$mm:$ss $g"); break; default: expression = Regex.Replace(expression, "\\$d{4}", DateInfo.Days[this.DayOfWeek]); expression = Regex.Replace(expression, "\\$d{2}", TwoDigit(Day)); expression = Regex.Replace(expression, "\\$d{1}", Day.ToString()); expression = Regex.Replace(expression, "\\$M{4}", DateInfo.Months[(this.Month - 1)]); expression = Regex.Replace(expression, "\\$M{2}", TwoDigit(Month)); expression = Regex.Replace(expression, "\\$M{1}", Month.ToString()); expression = Regex.Replace(expression, "\\$y{4}", Year.ToString()); expression = Regex.Replace(expression, "\\$y{2}", TwoDigitYear.ToString()); expression = Regex.Replace(expression, "\\$H{2}", TwoDigit(Hour)); expression = Regex.Replace(expression, "\\$H{1}", Hour.ToString()); expression = Regex.Replace(expression, "\\$h{2}", TwoDigit(Hour12)); expression = Regex.Replace(expression, "\\$h{1}", Hour12.ToString()); expression = Regex.Replace(expression, "\\$m{2}", TwoDigit(Minute)); expression = Regex.Replace(expression, "\\$m{1}", Minute.ToString()); expression = Regex.Replace(expression, "\\$s{2}", TwoDigit(Seconds)); expression = Regex.Replace(expression, "\\$s{1}", Seconds.ToString()); expression = Regex.Replace(expression, "\\$g{1}", this.Daylight); break; } return(expression); }