我需要使用Regex.Replace
删除字符串中的所有数字和符号。
输入123- abcd33
示例:输出示例:abcd
Answers:
您可以使用类似LINQ的解决方案来代替正则表达式:
string input = "123- abcd33";
string chars = new String(input.Where(c => c != '-' && (c < '0' || c > '9')).ToArray());
快速性能测试表明,这比使用正则表达式快大约五倍。
new string(text.Where(char.IsLetter).ToArray());
var result = Regex.Replace("123- abcd33", @"[0-9\-]", string.Empty);
打击码可以帮助您...
提取号码:
return string.Concat(input.Where(char.IsNumber));
提取字母:
return string.Concat(input.Where(char.IsLetter));
最好的设计是:
public static string RemoveIntegers(this string input)
{
return Regex.Replace(input, @"[\d-]", string.Empty);
}