如何在asp.net中用空字符串替换字符串中的任何这些“/ \\ [] : | < > + = ; , ? *”字符

use*_*088 0 c# asp.net sharepoint

我想在 asp.net c# "/ \ [ ] : | < > + = ; , ? *" 中用空字符串替换字符串中出现的以下任何字符

我正在尝试用它替换它

mystring.contains('[')
 {
 mystring.Replace('[',' ');
 }
Run Code Online (Sandbox Code Playgroud)

目前我正在这样做。有没有更干净的方法来做到这一点。感谢致敬

小智 5

有很多方法:

1)通过正则表达式:

var pattern = @"[\/\\[\]\:\|\<>\+\=\;\,\?\*]";
var sample = "test * beacuse [a]";
var result = Regex.Replace(sample, 
                           pattern, 
                           string.Empty, 
                           RegexOptions.CultureInvariant);
Run Code Online (Sandbox Code Playgroud)

2)通过linq:

var pattern = @"/\[]:|<>+=;,?*";
var result = new string(sample.Where(ch => !pattern.Contains(ch)).ToArray());
Run Code Online (Sandbox Code Playgroud)

3)通过StringBuilder:

var sb = new StringBuilder();

foreach (char t in sample)
{
    if (!pattern2.Contains(t))
    {
        sb.Append(t);
    }
}

result = sb.ToString();
Run Code Online (Sandbox Code Playgroud)

这些方法只是示例;)