private static KeyValuePair<string, string> ParsePlaceholder(string titleString, string placeHolder, int posNum)
{
KeyValuePair<string, string> pair = new KeyValuePair<string, string>(String.Empty, String.Empty);
string[] frags = placeHolder.Split(':');
string frag0 = frags[0];
string frag1 = frags[1];
string formatPattern = String.Format("{{{0}}}", posNum);
if (titleString.Contains(frag0)) {
int idx1 = titleString.IndexOf(frag0);
int idx2 = titleString.IndexOf("]]", idx1 + 4);
int len = idx2 - idx1 - frag0.Length - 1;
if (idx1 > 0 && idx2 > 0) {
string format = "d";
if (len > 0) {
format = titleString.Substring(idx1 + frag0.Length + 1, len);
}
placeHolder = placeHolder.Replace("*", format);
formatPattern = String.Format("{{{0}:{1}}}", posNum, format);
pair = new KeyValuePair<string, string>(placeHolder, formatPattern);
}
}
return pair;
}