使用C#进行字符串连接

我有一个输入字符串:

“风险管理,投资组合管理,投资计划”

如何将此字符串转换为:

“风险管理”+“投资组合管理”+“投资计划”

谢谢。

拆分和修剪

// include linq library like this: // using System.Linq; // then "test1, test2".Split(',').Select(o => o.Trim()); 

要么

 "test1, test2".Split(',').Select(o => o.Trim()).ToArray(); // returns array 

 "test1, test2".Split(',').Select(o => "\"" + o.Trim() + "\"") .Aggregate((s1, s2) => s1 + " + " + s2); // returns a string: "test1" + "test2" 

使用Split()方法:

 string[] phrases = s.Split(','); 

现在你有一个每个逗号分隔值的字符串数组。

要删除空格,请在每个字符串上使用Trim()方法(感谢John Feminella)

你不能在你的情况下使用String.Split() ,因为你有一个逗号,然后是一个空格。 所以你的字符串看起来像{ "risk management"" portfolio management"" investment planning" }。 相反,使用Regex.Split

 string[] investmentServices = Regex.Split(inputString, ", "); 
 var results = from s in string.Split("risk management, portfolio management, investment planning", new char[] { ',' }) select s.Trim(); 

您的问题不清楚是否要将','替换为'+'或仅仅是简单的split

以下是两种可能性:

 string s = "risk management, portfolio management, investment planning"; string transformedString = s.Replace(", ", "\" + \""); string[] parts = s.Split(new [] {", "}, StringSplitOptions.None); 

如果你想分割输入,你可以使用string.Split,使用逗号作为分隔符,或者更好的“,”,以考虑逗号后的空格,

 string[] array = inputString.Split(", "); 

但是,您可能希望将字符串中的逗号替换为加号,这也是您可以实现的目标:

 inputString = inputString.Replace(", ", "\" + \""); 

它实际上看起来像是在尝试执行拆分而不是连接。

如果您希望获取该输入字符串并将其转换为包含“风险管理”,“投资组合管理”和“投资计划”的三个字符串,则使用string.Split(inputString, ',') ,然后修剪每个字符串使用它时从结果数组中。

你的意思并不是很清楚。 如果您需要访问CSV值,那么这将分别输出每个值…

 string input = "risk management, portfolio management, investment planning"; string[] words = text.Split(new Char[] {','}); foreach(string word in words) { Console.WriteLine(word.Trim()); } //risk management //portfolio management //investment planning 

回复Jhonny D. Cano(对不起,没有50位代表发表评论。)

你的第一个推荐

string [] array = inputString.Split(“,”);

不起作用,因为你不能拆分字符串。 最接近的可能重载是char [],所以你必须把它写成……

string [] array = inputString.Split(“,”。ToCharArray());