<p>This probably has a simple answer, but I must not have had enough coffee to figure it out on my own:</p>

<p>If I had a comma delimited string such as:</p>

<pre><code>string list = "Fred,Sam,Mike,Sarah";
</code></pre>

<p>How would get each element and add quotes around it and stick it back in a string like this:</p>

<pre><code>string newList = "'Fred','Sam','Mike','Sarah'";
</code></pre>

<p>I'm assuming iterating over each one would be a start, but I got stumped after that.</p>

<p>One solution that is ugly:</p>

<pre><code>int number = 0;
string newList = "";
foreach (string item in list.Split(new char[] {','}))
{
    if (number &gt; 0)
    {
        newList = newList + "," + "'" + item + "'";
    }
    else
    {
        newList = "'" + item + "'";
    }
    number++;
}
</code></pre>

```
```
string s = "A,B,C";
string replaced = "'"+s.Replace(",", "','")+"'";
```
```
Thanks for the comments, I had missed the external quotes.
Of course.. if the source was an empty string, would you want the extra quotes around it or not ? And what if the input was a bunch of whitespaces... ? I mean, to give a 100% complete solution I'd probably ask for a list of unit tests but I hope my gut instinct answered your core question.
Update
: A LINQ-based alternative has also been suggested (with the added benefit of using String.Format and therefore not having to worry about leading/trailing quotes):
```
```
string list = "Fred,Sam,Mike,Sarah";
string newList = string.Join(",", list.Split(',').Select(x => string.Format("'{0}'", x)).ToList());
```
```