c # string Trim не работает, странная проблема - PullRequest
3 голосов
/ 14 июля 2010

У меня есть такая строка:

string val = 555*324-000

Теперь мне нужно удалить символы * и -, поэтому я использую этот код ( на основе MSDN )

char[] CharsToDelete = {'*', '(', ')', '-', '[', ']', '{', '}' };
string result = val.Trim(CharsToDelete);

но строка остается прежней.В чем причина?

Ответы [ 3 ]

19 голосов
/ 14 июля 2010

Trim ... Удаляет все начальные и конечные вхождения набора символов, указанных в массиве, из текущего объекта String. Вместо этого вы должны использовать метод Replace.

6 голосов
/ 14 июля 2010

Поскольку Trim () удалит любой символ в CharsToDelete в начале и в конце строки.

Вы должны использовать функцию val.Replace ().

1 голос
/ 14 июля 2010

Правильный способ сделать это будет

string val = 555*324-000
char[] CharsToDelete = {'*', '(', ')', '-', '[', ']', '{', '}' };

foreach (char c in CharsToDelete)
{
  val = val.Replace(c, '');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...