now*_*ed. 2 c# dictionary replace .net-4.5
我有一个dictionary这样的简单:
var fruitDictionary = new Dictionary<string, string> {Apple,Fruit}, {Orange, Fruit}, {Spinach, Greens}
我有一个字符串
var fruitString = Apple Orange Spinach Orange Apple Spinach
如何用matching-word字典替换该句子中所有出现的特定单词?
(即)上面的句子应该是Fruit Fruit Greens Fruit Fruit Fruit什么?
任何想法都非常感谢.
编辑:
我试过这样的事情:
var outputString = string.Empty;
fruitString.ToArray().ToList().Foreach(item =>
{
if (fruitDictionary.ContainsKey(item))
{
outputString = outputString + fruitDictionary[item];
}
Run Code Online (Sandbox Code Playgroud)
对此有何最佳解决方案?上面的代码不是最优的,因为它完成traversing给定数组的整个长度!
只是:
var output = new StringBuilder(fruitString);
foreach (var kvp in fruitDictionary)
output.Replace(kvp.Key, kvp.Value);
var result = output.ToString();
Run Code Online (Sandbox Code Playgroud)
这只是StringBuilder用你的初始化a fruitString,并迭代Dictionary,用它替换它找到的每个键.
| 归档时间: |
|
| 查看次数: |
4592 次 |
| 最近记录: |