C# string.Join 与多个分隔符

New*_*w27 0 c# string

我通过 Google 和所有其他链接进行了搜索,但不知道这是否可行。

string.Join方法链接http://msdn.microsoft.com/en-us/library/system.string.join.aspx

Join(String, String[]),我知道第一个参数 ( String) 是分隔符,第二个参数 ( String[]) 是我们想要加入的数组。是否可以使用 2 个不同的字符串/分隔符加入它?例如我的阵列>

array[0] = A;
array[1] = Alpha; 
array[2] = B; 
array[3] = Bravo;
Run Code Online (Sandbox Code Playgroud)

最终产品是:

A = Alpha, B= Bravo, 
Run Code Online (Sandbox Code Playgroud)

所以它将是 2 个字符串,“=”和“,”。有什么建议可以这样做吗?

Jav*_*ram 5

更新:如果你不想,结束,两个代码

你可以这样做,但建议配对keyvalue或使用二维数组。

代码:

int i=0;
string str = "";
var arr = new string[] { "A", "Alpha", "B", "Bravo" };

foreach (var item in arr)
 {
    str += item;
    if (i < arr.Length-1)
    {
       if (i % 2 == 0)                
         str += " = ";               
       else
         str += ", ";          
    }
    i++;
 }
//output: A = Alpha, B = Bravo
Run Code Online (Sandbox Code Playgroud)


通过这种方式,您还可以使用多个分隔符。

例子:

int i=0;
string str = "";
var arr = new string[] { "A", "Alpha", "1", "B", "Bravo", "2" };

var delimiters = new string[] { " = ", ", ", ":" };

foreach (var item in arr)
 {
    str += item;
    if (i < arr.Length-1)
    {
        if (i % 3 == 0)
           str += delimiters[0];
        else if (i % 3 == 1)
           str += delimiters[1];                        
        else
           str += delimiters[2];                        
     }
     i++;
 }
//output: A = Alpha:1, B = Bravo:2
Run Code Online (Sandbox Code Playgroud)