,How are you doingRegards,>"; 我想首先在列表中获取键名 USER 和 SENDER,这是通过以-6ren">
gpt4 book ai didi

c# - 替换特定字符之间的数据

转载 作者:行者123 更新时间:2023-11-30 15:25:39 26 4
gpt4 key购买 nike

我有一个字符串,它在 <<>> 之间有一些键。

 string s = "<p>Hi <<USER>>,<br/>How are you doing<br/>Regards,<br/><<SENDER>></p>";

我想首先在列表中获取键名 USER 和 SENDER,这是通过以下方式完成的:

    var keys = new List<string>();
foreach (Match match in Regex.Matches(s, @"<<(.*?)>>"))
{
keys.Add(match.Groups[1].Value);

}
List<string> values= new List<string>(){"John","Team"};

在我们得到键后,我想用另一个列表(此处命名为值)替换这些键,该列表具有这些键的值并希望结果为:

 string s = "<p>Hi John,<br/>How are you doing<br/>Regards,<br/>Team</p>";

字符串 s 可以是任何东西,键的数量和它们的值也可以变化,但键总是包含在 <<>>>

之间

最佳答案

正如@AlexBell 所建议的,您可以简单地使用 String.Replace() 方法。此外,声明一组 placeholder/value 对更方便,如下所示:

string s = "<p>Hi <<USER>>,<br/>How are you doing<br/>Regards,<br/><<SENDER>></p>";

Dictionary<string, string> dictionary = new Dictionary<string, string>();
dictionary.Add("<<USER>>", "Jhon");
dictionary.Add("<<SENDER>>", "Team");

StringBuilder text = new StringBuilder(s);
foreach (var entry in dictionary)
{
text.Replace(entry.Key, entry.Value);
}

Console.WriteLine(text.ToString());

关于c# - 替换特定字符之间的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30685107/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com