得到字符串“AA,BB,CC”想要“'AA','BB','CC''” - 我可以更聪明地做吗?

时间:2013-03-06 10:15:47

标签: c# string

我知道我可以这样做:

        string input = "AA,BB,CC";
        string output = "";
        foreach (var item in input.Split(','))
        {
            output += string.Format("'{0}',", item);
        };
        output =output.TrimEnd(',');

        Assert.AreEqual("'AA','BB','CC'", output);

但可能有更智能,更快捷的方法。

感谢任何想法。

Larsi

4 个答案:

答案 0 :(得分:7)

不知道这会慢一些但是更短:

string output = "'" + input.Replace(",", "','") + "'";

答案 1 :(得分:2)

我不确定它会比你拥有的代码更快,但你可以使用LINQ并编写如下内容:

string output = String.Join(",",
    input.Split(',').Select(token => "'" + token + "'"));

答案 2 :(得分:2)

output = String.Join(",", input.Split(',').Select(s => "'" + s + "'"));

答案 3 :(得分:1)

output = String.Join(",", input.Split(',').Select(s => "'" + s + "'"));