【发布时间】:2019-04-08 16:00:28
【问题描述】:
我需要完成以下工作。我有允许的字符列表(这是给 QB Issues with special characters in 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
}
我知道如何使用 RegEx 查找坏字符,但这就像倒退一样,我不需要查看匹配项。我需要查看不匹配的内容并仅替换那些内容。
【问题讨论】:
-
你看Regex.Replace了吗?也许甚至像
^[ABCD...abcd...~_-...]这样粗暴的模式?很多这些字符可以被字符类替换以使模式更小,例如\d可以将0替换为9。A-Za-z将覆盖英文字母 -
你想对“坏”字符做什么?完全删除它们?
Regex.Replace(input,pattern,"")会工作 -
@PanagiotisKanavos "// TODO: 需要……用空格替换所有未包含在“goodChars”中的字符“