简体   繁体   中英

String.Join() with string interpolation for string array in C#

I had an issue on using string interpolation in string.join

    string type1 = "a,b,c";
    string[] type2 = new string[3] { "a", "b", "c" };

how to write the string.Join query, below code is just my attempt, but the result is not as expected.

    string result = string.Join(",", $"'{type1}'");

In both cases, the output should be 'a','b','c'

how to use string.Join() with string interpolation for an array of strings

If you want to add single quotes around each elements, you can apply a simple .Select() sequence, such as:

var type1 = "a,b,c";
var type2 = new string[3] { "a", "b", "c" };

// using System.Linq;
var result1 = string.Join(',', type1.Split(',').Select(x => $"'{x}'"));
var result2 = string.Join(',', type2.Select(x => $"'{x}'"));

Console.WriteLine($"Type1 : {result1}");
Console.WriteLine($"Type2 : {result2}");

This outputs:

Type1 : 'a','b','c'
Type2 : 'a','b','c'

Fiddle

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM