Double quote string replace in C#

Solution 1:

s = s.Replace("\"", "\\\"");

or

s = s.Replace(@"""", @"\""");

In the first example the " has to be escaped with a backslash as it would otherwise end the string. Likewise, in the replacement string \\ is needed to yield a single backslash by escaping the escape character.

In the second example verbatim string literals are used, they are written as @"...". In those literals no escape sequences are recognized, allowing you to write strings that contain lots of backslashes in a much cleaner way (such as regular expressions). The only escape sequence that works there is "" for a single ".

Solution 2:

You should use a double backslash:

s = s.Replace("\"", "\\\"");

Solution 3:

To remove ALL quotes from a string, try:

field.Value = Regex.Replace(field.Value, @"[\""]", "", RegexOptions.None);

What a pain trying to find this answer on the internet!