table.Add("五", 5);
table.Add("六", 6);
table.Add("七", 7);
table.Add("八", 8);
table.Add("九", 9);
}
public virtual void Interpret(Context context)
{
if(context.Statement.Length == 0)
{
return;
}
foreach(string key in table.Keys)
{
int value = table[key];
if(context.Statement.EndsWith(key + GetPostfix()))
{
context.Data += value * Multiplier();
context.Statement = context.Statement.Substring(0, context.Statement.Length - GetLength());
}
if(context.Statement.EndsWith("零"))
{
context.Statement = context.Statement.Substring(0, context.Statement.Length - 1);
}
}
}
public abstract string GetPostfix();
public abstract int Multiplier();
文章来源于领测软件测试网 https://www.ltesting.net/