C# 如何在c中拆分字符串并添加自定义字符

C# 如何在c中拆分字符串并添加自定义字符,c#,string,C#,String,我有以下条件: str1 - 12345,67890,9999,0000 str2 - 5839 现在我想再次拆分、添加字符和连接字符串 我的最终输出: str1 - ''12345'',''67890'',''9999'',''0000'' str2 - ''5839'' 您可以使用此功能: public string splitFunction(string strAttached, string strSpecialChar, char chrSplitChar =

我有以下条件:

   str1 - 12345,67890,9999,0000
   str2 - 5839 
现在我想再次拆分、添加字符和连接字符串

我的最终输出:

str1 -  ''12345'',''67890'',''9999'',''0000''
str2 -  ''5839''

您可以使用此功能:

public string splitFunction(string strAttached, string strSpecialChar, char chrSplitChar = ',', bool blnTrimValues = true)
{
    try
    {
        IEnumerable<string> result;

        if (blnTrimValues)
            result = strAttached.Split(chrSplitChar).Select(strValue => strSpecialChar + (string)strValue.Trim() + strSpecialChar);
        else if (strSpecialChar == "")
            result = strAttached.Split(chrSplitChar);
        else
            result = strAttached.Split(chrSplitChar).Select(strValue => strSpecialChar + strValue + strSpecialChar);

        return string.Join(chrSplitChar.ToString(), result);
    }
    catch (Exception ex) { throw ex; }
}

最简单的方法是使用String.Split、循环,然后像这样使用String.Join

string str1  =   "12345,67890,9999,0000";
var strArr = str1.Split(',');

for(int i=0; i<strArr.Length;i++){

    strArr[i] = "''"+strArr[i]+"''";
}
Console.WriteLine(String.Join(",", strArr));  

// output = ''12345'',''67890'',''9999'',''0000''
下面是代码示例

var str1 = "12345,67890,9999,0000";
var str2 = "5839";
var result1 = "''" + string.Join("'',''", str1.Split(',')) + "''";
var result2 = "''" + string.Join("'',''", str2.Split(',')) + "''";
Console.WriteLine(result1);
Console.WriteLine(result2);

您也可以简单地使用Replace方法将的实例替换为,同时还可以将以下内容添加到字符串的两端:

var input = "12345,67890,9999,0000";

var result = $"''{input.Replace(",", "'',''")}''";

// result == "''12345'',''67890'',''9999'',''0000''"

您需要了解string.split,这些应该可以让您开始学习:我已经尝试过了,但它不能正常工作。我试过String.Join,array;string result=string.Join、、source.Split'、'.Selectitem=>${item};字符串结果=Regex.Replacesource,@?
var input = "12345,67890,9999,0000";

var result = $"''{input.Replace(",", "'',''")}''";

// result == "''12345'',''67890'',''9999'',''0000''"