操纵字符串

时间:2013-02-22 16:24:13

标签: c#

我正在尝试从字符串中删除一些特殊字符。 我有以下字符串

[_fesd][009] Statement

我希望摆脱所有'_''['和']' 我设法用TrimStart删除了第一个字符,我得到了fesd] [009] Statement

如何从字符串中间删除特殊字符?

目前我正在使用以下代码

string newStr = str.Trim(new Char[] { '[', ']', '_' });

其中str是应该进行操作的strin,结果应该存储在newStr

5 个答案:

答案 0 :(得分:6)

string newStr = str.Replace("[", "").Replace("]", "").Replace("_", "");

答案 1 :(得分:1)

var newStr = Regex.Replace("[_fesd][009] Statement", "(\\[)|(\\])|(_)", string.Empty);

答案 2 :(得分:0)

使用string.Replace和string.Empty作为要替换的字符串。

答案 3 :(得分:0)

您可以使用Linq

static void Main(string[] args)
{
    var s = @"[_fesd][009] Statement";
    var unwanted = @"_[]";

    var sanitizedS = s
        .Where(i => !unwanted.Contains(i))
        .Aggregate<char, string>("", (a, b) => a + b);

    Console.WriteLine(sanitizedS);
    // output: fesd009 Statement
}

答案 4 :(得分:0)

var chars = new Char[] { '[', ']', '_' };
var newValue = new String(str.Where(x => !chars.Contains(x)).ToArray());