字符串“二零一八年十一月十九日”转化为“2018-11-19”
思路:对于大写的每一个数字注意转化为对应的字符,如数字零到九转化为阿拉伯0-9;年月日对应转化为字符“-”;“十”的转化分为四种情况,“月十日 月二十四日 月十三日 月三十日”,可以分别转化为“10;(不做转化);1;0”。
步骤:
- 将0-9的大小写字符串放到字典集合中
Dictionary<char, char> dic = new Dictionary<char, char>();
string[] contents = ZiDian.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
for (int i= 0; i < contents.Length; i++)
{
if (!dic.ContainsKey(contents[i][0]))
{
dic.Add(contents[i][0], contents[i][1]);
}
}
- 对所给的字符串进行转化
string result = string.Empty;
//翻译
for (int i = 0; i < str.Length; i++)
{
if (dic.ContainsKey(str[i]))
{
result += dic[str[i]];
}