我需要完成以下任务。我有一个允许的字符列表(这是为了 QB QBO API v3 .NET SDK中特殊字符问题)。
var goodChars = "ABCD...abcd...~_-...";
void string Sanitize(string input)
{
// TODO: Need to take input and replace all chars not included in "goodChars" with a space
}
我知道如何使用正则表达式查找错误字符,但这就像反向操作,我不需要查看匹配项。我需要查看不匹配的内容,并仅替换那些不匹配的内容。
^[ABCD...abcd...~_-...]
这样粗暴的模式?很多这些字符都可以用字符类替换,以使模式更小,例如\d
可以替换为0
到9
。A-Za-z
将涵盖英文字母。 - Panagiotis KanavosRegex.Replace(input,pattern,"")
会起作用。 - Panagiotis Kanavos