private string ToDecimal(string input)
{
if (input.ToLower().StartsWith("0x") || input.ToUpper().StartsWith("&H"))
{
return Convert.ToUInt32(input.Substring(2), 16).ToString();
}
else if (input.ToLower().StartsWith("0o"))
{
return Convert.ToUInt32(input.Substring(2), 8).ToString();
}
else if (input.ToLower().StartsWith("0b"))
{
return Convert.ToUInt32(input.Substring(2), 2).ToString();
}
else if (input.ToLower().StartsWith("0t"))
{
return ThornalToDecimal(input.Substring(2));
}
else if ((input.StartsWith("[") && input.EndsWith("]")) || (input.StartsWith("{") && input.EndsWith("}")))
{
return Convert.ToUInt32(input.Substring(1, (input.Length - 2)), 2).ToString();
}
else if (input.ToLower().EndsWith("h"))
{
return Convert.ToUInt32(input.Substring(0, (input.Length - 1)), 16).ToString();
}
else if (input.ToLower().EndsWith("b"))
{
return Convert.ToUInt32(input.Substring(0, (input.Length - 1)), 2).ToString();
}
else if (input.ToLower().EndsWith("t"))
{
return ThornalToDecimal(input.Substring(0, (input.Length - 1)));
}
else if (input.StartsWith("$"))
{
return Convert.ToUInt32(input.Substring(1), 16).ToString();
}
else
{
return Convert.ToUInt32(input, 16).ToString();
}
}