c#string修剪不起作用,这是一个奇怪的问题

时间:2010-07-14 09:56:18

标签: c# string

我有这样的字符串:

string val = 555*324-000

现在,我需要删除*和 - 字符,所以我使用该代码(based on MSDN

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

但字符串保持不变。是什么原因?

3 个答案:

答案 0 :(得分:19)

修剪...从当前String对象中删除数组中指定的一组字符的所有前导和尾随。 您应该使用Replace方法。

答案 1 :(得分:6)

因为Trim()将在字符串的开头和结尾删除CharsToDelete中的任何字符。

你应该使用val.Replace()函数。

答案 2 :(得分:1)

正确的方法是

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

foreach (char c in CharsToDelete)
{
  val = val.Replace(c, '');
}