如何定义结果? [英] How Do I Define Result ?

查看:89
本文介绍了如何定义结果?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个textbox1文本地图代码



I have a textbox1 Text map code

string input = TextBox1.Text;
Dictionary<string, string> map = new Dictionary<string, string>();
map.Add("go", "GYO");
map.Add("oo", "OMO");
map.Add("Go", "OIO");

string temp = input;
foreach (var entry in map)
{
    string key = entry.Key;
    string value = entry.Value;
    temp = Regex.Replace(temp, key, match =>
    {
        bool isUpper = char.IsUpper(match.Value[0]);

        char[] result = value.ToCharArray();
        result[0] = isUpper
            ? char.ToUpper(result[0])
            : char.ToLower(result[0]);
        return new string(result);
    }, RegexOptions.IgnoreCase);







如果我输入:go将它替换为GYO

如果我键入:oo它替换为OMO



B UT

如果我输入:Go它也被替换为GYO它无法检测到大写单词。

当我已经将Go映射为OIO但它显示结果GYO,我为小字母go映射。



我的问题是:

我如何定义不同的结果对于后者和小后者。



感谢先进。

推荐答案

为什么不:
Dictionary<string, string> map = new Dictionary<string, string>();
map.Add("go", "GYO");
map.Add("oo", "OMO");
map.Add("Go", "OIO");

// usage

string mapItem;

if(map.TryGetValue(TextBox1.Text, out mapItem))
{
    // handle the valid map entry now in 'mapItem
}
else
{
    // handle invalid data in TextBox
}


这篇关于如何定义结果?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆