Удалить символ '\' из строки c # - PullRequest
31 голосов
/ 05 декабря 2011

У меня есть следующий код

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

Я добавил сеть комментариев к строке, которая мне интересна.Я хочу удалить все символы '\' из строки.Это правильный путь к этому?Я не работаю.Все \ все еще находятся в строке.

Ответы [ 9 ]

92 голосов
/ 05 декабря 2011

Вы можете использовать:

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

или

line.Replace(@"\", string.Empty);
8 голосов
/ 05 декабря 2011

Вы можете использовать String.Replace , который в основном удаляет все вхождения

line.Replace(@"\", ""); 
5 голосов
/ 05 декабря 2011
line = line.Replace("\\", "");
4 голосов
/ 05 декабря 2011

Попробуйте заменить

string result = line.Replace("\\","");
4 голосов
/ 05 декабря 2011

, чтобы удалить все '\' из строки, просто сделайте следующее:

myString = myString.Replace("\\", "");
4 голосов
/ 05 декабря 2011

Попробуйте использовать

String sOld = ...;
String sNew =     sOld.Replace("\\", String.Empty);
4 голосов
/ 05 декабря 2011

Почему бы не просто это?

resultString = Regex.Replace(subjectString, @"\\", "");
2 голосов
/ 05 декабря 2011
         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 голосов
/ 05 декабря 2011

Trim удаляет только символы в начале и конце строки, поэтому ваш код не совсем работает.Вы должны использовать Replace вместо:

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