从字符串c#中删除'\'字符

时间:2011-12-05 09:45:22

标签: c# trim

我有以下代码

string line = ""; 

while ((line = stringReader.ReadLine()) != null)
{
    // split the lines
    for (int c = 0; c < line.Length; c++)
    {
        if ( line[c] == ',' && line[c - 1] == '"' && line[c + 1] == '"')
        {
            line.Trim(new char[] {'\\'}); // <------
            lineBreakOne = line.Substring(1, c  - 2);
            lineBreakTwo = line.Substring(c + 2, line.Length - 2);
        }
    }
}

我在我想知道的那条线上添加了评论网。我想删除所有&#39; \&#39;来自字符串的字符。这是正确的方法吗?我不工作。所有\仍然在字符串中。

10 个答案:

答案 0 :(得分:91)

您可以使用:

line.Replace(@"\", "");

line.Replace(@"\", string.Empty);

答案 1 :(得分:8)

您可以使用基本删除所有匹配项的String.Replace

line.Replace(@"\", ""); 

答案 2 :(得分:5)

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

答案 3 :(得分:4)

为什么不简单呢?

resultString = Regex.Replace(subjectString, @"\\", "");

答案 4 :(得分:4)

尝试使用

String sOld = ...;
String sNew =     sOld.Replace("\\", String.Empty);

答案 5 :(得分:4)

从字符串中删除所有'\',只需执行以下操作:

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

答案 6 :(得分:4)

尝试替换

string result = line.Replace("\\","");

答案 7 :(得分:2)

Trim只删除字符串开头和结尾的字符,这就是为什么你的代码不能正常工作的原因。您应该使用Replace代替:

line.Replace(@"\", string.Empty);

答案 8 :(得分:2)

         while ((line = stringReader.ReadLine()) != null)
         {
             // split the lines
             for (int c = 0; c < line.Length; c++)
             {
                 line = line.Replace("\\", "");
                 lineBreakOne = line.Substring(1, c - 2);
                 lineBreakTwo = line.Substring(c + 2, line.Length - 2);
             }
         }

答案 9 :(得分:0)

我已经面对这个问题很多次了,令我惊讶的是很多这样的方法都不起作用。

我只是用Newtonsoft.Json反序列化字符串,然后得到明文。

string rough = "\"call 12\"";
rough = JsonConvert.DeserializeObject<string>(rough);

//the result is: "call 12";