使用数组替换字符串

本文关键字:字符串 替换 数组 | 更新日期: 2023-09-27 18:24:32

我从csv文件中获取了两个数组,我想检查第一个数组的当前输出,并输出第二个数组,例如"你好,LOL"会输出"你好,大声笑出来"我用过

var reader = new StreamReader(File.OpenRead(@filelocation"));
List<string> listA = new List<string>();
List<string> listB = new List<string>();
while (!reader.EndOfStream)
{
    var line = reader.ReadLine();
    var values = line.Split(',');
    listA.Add(values[0]);
    listB.Add(values[1]);
}

数组是存储的,其中有正确的信息,我只是不知道如何检查第一个列表中的字符串并将其更改为第二个。

使用数组替换字符串

您应该使用Dictionary而不是List来执行此操作。此外,您可以使用File.ReadAllLines读取文件中的所有行,而不是循环。

// I replace your code with linq
Dictionary<string, string> dictionary = 
  File.ReadAllLines("@filelocation").Select(l => l.Split(',')).ToDictionary(k =>
k[0], v => v[1]); 
string input = "Hello, LOL" ; 
var thekey =  dictionary.Keys.FirstOrDefault(k => input.Contains(k));
if (thekey != null) // Replacement was found 
{
    input = input.Replace(thekey, dictionary[thekey]);    
}
// Should print Hello, Laugh out loud
Console.WriteLine(input) ;