替换包含双引号的字符串

时间:2013-03-18 01:37:24

标签: c# string replace

我觉得这应该很简单,但我正在努力。如果我有一个包含双引号的字符串,并且我想删除该字符串,我将如何去做?

如果我有这个文字:

The quick "brown" fox jumps over the "lazy" dog

我会想用这个:

 .Replace("The quick \"brown\" fox jumps over the \"lazy\" dog", "");

但它似乎没有用双引号识别字符串。我提出的所有搜索似乎都想要替换引号本身,而不是包含引号的字符串。

1 个答案:

答案 0 :(得分:5)

如果你想要的只是简单地删除引号本身,请使用:

var input = "The quick \"brown\" fox jumps over the \"lazy\" dog";
var output = input.Replace("\"", string.Empty);
// output == "The quick brown fox jumps over the lazy dog"

如果您要删除引号之间的引号,则需要使用RegEx.Replace,如下所示:

var input = "The quick \"brown\" fox jumps over the \"lazy\" dog";
var output = RegEx.Replace(input, "\"[^\"]*\"", string.Empty);
// output == "The quick  fox jumps over the  dog"