我有一个包含许多字符的字符串。我想删除A-Za-z和白色空间,剩下的就剩下了。最好的方法是什么?
这是我尝试过的事情
presaleEstimateHigh = Regex.Replace(presaleEstimateHigh, @"[A-Za-z]", string.Empty);
但我还需要删除空格。
答案 0 :(得分:10)
您可以使用\ s。
例如:
presaleEstimateHigh = Regex.Replace(presaleEstimateHigh, @"[A-Za-z\s]", string.Empty);
答案 1 :(得分:3)
你的正则表达式没问题,除了空格。这应该有效:
string result = Regex.Replace(myString, @"[a-zA-Z\s]+", string.Empty);
答案 2 :(得分:3)
没有正则表达式:
var chars = str.Where(c => !char.IsLetter(c) && !char.IsWhitespace(c)).ToArray();
var rest = new string(chars);
答案 3 :(得分:2)
答案 4 :(得分:1)
你几乎成功了。使用此正则表达式
[a-zA-Z ]+
它只包含空格。添加+
可以提高效率,因为可以一次(内部)替换整个系列的字符。