Заменить \ - PullRequest
       18

Заменить \

3 голосов
/ 14 сентября 2011

Когда я синхронизирую данные из Active Directory, и любые атрибуты объекта имеют резервный символ, он экранирует их по префиксу '\', например: Hello, Adams, он будет экранировать Hello \, Adams.

И в коде это показывает мне Hello \, Адамс.

Я попытался заменить его, выполнив mystring.Replace("\\",@"\");

но это не сработало.

Есть идеи?

Ответы [ 7 ]

6 голосов
/ 14 сентября 2011

Вы заменяете обратную косую черту тем же символом. Попробуйте это:

mystring.Replace("\\", string.Empty);
5 голосов
/ 14 сентября 2011

"\\" - это @"\".

Вы хотите попробовать:

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

4 голосов
/ 14 сентября 2011

Вы заменяете \ здесь \. Это ни к чему не приведет.

Попробуйте это:

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

Знак @ обозначает строковый литерал, дополнительная информация здесь . Если вы используете это, вам не придется избегать персонажей. Следующий код делает то же самое:

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

Вы видите, что вы должны экранировать символ обратной косой черты с другой обратной косой чертой, поскольку символ обратной косой черты является escape-символом.

1 голос
/ 14 сентября 2011

попробуйте это.это работает

(@"sample\,text").Replace(@"\", string.Empty)
1 голос
/ 14 сентября 2011

Попробуйте

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

.

0 голосов
/ 14 сентября 2011
string mystring = @"Hello\,Adams";
string answer=mystring.Replace("\\",string.Empty);
//or
string answer=mystring.Replace("\\","");

будет работать.

0 голосов
/ 14 сентября 2011

Отсюда: http://www.dotnetperls.com/replace

Необходимо присвоить результат операции новой строке.

Кроме того, вам необходимо иметь @ в обеих строках.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...