簡體   English   中英

使用C#進行字符串連接

[英]String concatenation using 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)

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

在這種情況下,您不能使用String.Split() ,因為您有一個逗號,然后是一個空格。 因此您的字符串看起來像{ "risk management"" portfolio management"" investment planning" }。 而是使用Regex.Split

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

如果您想分割輸入內容,則可以使用string.Split(使用逗號作為分隔符),或者使用更好的“,”來考慮逗號后的空格,

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

但是,您可能希望將字符串內的逗號替換為加號,這也是實現以下目的的方法:

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

您是否要用','代替'+'還是只是簡單的split尚不清楚。

這是兩種可能性:

string s = "risk management, portfolio management, investment planning";

string transformedString = s.Replace(", ", "\" + \"");

string[] parts = s.Split(new [] {", "}, StringSplitOptions.None);

實際上,您似乎要執行拆分而不是串聯。

如果要獲取該輸入字符串並將其轉換為包含“風險管理”,“投資組合管理”和“投資計划”的三個字符串,請使用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());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM