我有一个Linq代码来获取可接受的字符并删除其他字符。 但是这段代码用“”代替了其他代码(没有+ null + string.empty等) 我想用space()替换。我该怎么办?
非常感谢。
string clean = new string(incomingText.Where(c => @" 0123456789abcçdefgğhıijklmnöopqrsştuüvwxyz".Contains(c)).ToArray());
答案 0 :(得分:7)
你可以使用:
// Alternatively use a HashSet<char>
string acceptableCharacters = " 1234...";
string clean = new string(incomingText.Select(c => acceptableCharacters.Contains(c) ?
c : ' ')
.ToArray());
请注意,这仍然非常有效。我可能会使用Regex.Replace
来调用。
Regex invalidCharacterPattern = new Regex("[^ 0-9a-zçğıöşü]");
string clean = invalidCharacterPattern.Replace(incomingText, " ");