web-dev-qa-db-fra.com

Supprimer le caractère '\' de la chaîne c #

J'ai le code suivant

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);
        }
    }
}

J'ai ajouté un commentaire net à la ligne sur laquelle je m'interroge. Je veux supprimer tous les caractères '\' de la chaîne. Est-ce la bonne façon de procéder? Je ne travaille pas Tous\sont toujours dans la chaîne.

35
maffo

Vous pouvez utiliser:

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

ou

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

Vous pouvez utiliser String.Replace qui supprime fondamentalement toutes les occurrences.

line.Replace(@"\", ""); 
8
Sandeep Bansal

Pourquoi pas simplement ça?

resultString = Regex.Replace(subjectString, @"\\", "");
5
FailedDev
line = line.Replace("\\", "");
5
craig1231

Essayez de remplacer

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

Essayez d'utiliser

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

pour supprimer tous les "\" d'une chaîne, procédez comme suit:

myString = myString.Replace("\\", "");
4
Øyvind Bråthen

Trim ne supprime que les caractères au début et à la fin de la chaîne, c'est pourquoi votre code ne fonctionne pas tout à fait. Vous devriez utiliser Replace à la place:

line.Replace(@"\", string.Empty);
2
Falanwe
         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);
             }
         }
2
Vano Maisuradze