我正在尝试做一个简单的替换。我的问题是,它不是替换字符串,而是显示它抓取最后几个字符并将它们追加到最后。
public static Dictionary<string, string> dict = new Dictionary<string, string> {
{"1", @"\\id 1ch\n fjdsbfjdshfd"},
{"2", @"\\id 1co\n fjdsbfjdshfd"},
{"3", @"\\id 1th\n fjdsbfjdshfd"}
};
public static string bookNameFn(string line)
{
return line.Split(' ')[1].ToLower().Replace("1ch", "1Chr").Replace("1co", "1Cor").Replace("1th", "1Thess");
}
foreach (KeyValuePair<String, String> usfm in dict)
{
foreach (var line in usfm.Value.Split('\n'))
{
if (line.StartsWith("\\id "))
{
Console.WriteLine(bookNameFn(line));
}
}
}
输出
1Chrr
1Corr
1Thessess
期望的输出
1Chr
1Cor
1Thess
答案 0 :(得分:0)
使用文字符号,例如
@"\id 1th\n fjdsbfjdshfd";
它会起作用,问题在于通过字符串构造函数解释值的方式。