日期:2014-05-18  浏览次数:21139 次

怎么实现字符串的顺序替换
比如有一个字符串是:“aaa{参数}bbb{参数}{参数}”
然后有三个值“123”,“234”,“ttt”
怎么实现如下的效果,用值顺序替换掉字符串中的参数:
“aaa123bbb234ttt”

用正则表达式是不是好实现,但是我没接触过,还请各位大侠帮忙,


------解决方案--------------------
C# code

string a = "123";
string b = "234";
string c = string.Format("{0},{1}", a, b);

------解决方案--------------------
C# code

string str="";//要替换的字符串
Dictionary<string, string> data = new Dictionary<string, string>();
//然后以参数名作为key,参数值作为value添加进去后
foreach(string key in data.Keys)
{
    str=str.Replace("{"+key+"}",data[key]);
}

------解决方案--------------------
可以用循环哦。
------解决方案--------------------
C# code
            string[] value = { "123", "234", "ttt" };
            string str = "aaa{参数}bbb{参数}{参数}";
            string[] strCollection = Regex.Split(str, @"\{[^}]+\}");
            string result = string.Empty;
            for (var i = 0; i < value.Length; i++)
            {
                result += (i > strCollection.Length ? "" : strCollection[i]) + value[i];
            }
            Console.WriteLine(result);