Comment utiliser Regex.Replace pour remplacer deux chaînes à la fois?

J’ai la méthode suivante qui remplace le signe “dièse” du nom de fichier mais je veux aussi pouvoir remplacer “l ‘apostrophe simple” en même temps. Comment puis-je le faire? C’est la valeur de filename = Provider license_A’R_Ab # acus Settlements_1-11-09.xls

static ssortingng removeBadCharPound(ssortingng filename) { // Replace invalid characters with "_" char. //I want something like this but is NOT working //return Regex.Replace(filename, "# ' ", "_"); return Regex.Replace(filename, "#", "_"); } 

Essayer

 return Regex.Replace(filename, "[#']", "_"); 

Remarquez, je ne suis pas sûr qu’une expression rationnelle soit plus rapide qu’un peu plus simple:

 return filename.Replace('#', '_') .Replace('\'', '_'); 

Et juste pour le plaisir, vous pouvez accomplir la même chose avec LINQ:

 var result = from c in fileName select (c == '\'' || c == '#') ? '_' : c; return new ssortingng(result.ToArray()); 

Ou, compressé dans un one-liner sexy:

 return new ssortingng(fileName.Select(c => c == '\'' || c == '#' ? '_' : c).ToArray())