删除字符串中与数字和字母不同的所有符号

时间:2016-07-06 14:08:33

标签: c# regex

我需要一个正则表达式,删除与字符串中的数字和字母不同的所有符号。例如:

RecyclerView

有什么想法吗?

3 个答案:

答案 0 :(得分:3)

请试试这个

string address = "TEXT 3 !@#$%^&*()_}|{\":?> REMOVE ALL SYMBOLS 45";

var sb = new StringBuilder();
foreach (var c in address)
{
    if (Char.IsLetterOrDigit(c) || Char.IsWhiteSpace(c))
        sb.Append(c);
}

var result = sb.ToString(); 

它应该比正则表达式快。

答案 1 :(得分:0)

这应该有效:

var result = new Regex("[^a-zA-Z0-9 ]").Replace(address, string.Empty);

这只保留a-ZA-Z0-9white space

中的任何内容

您也可以使用linq:

var result2 = new String(address.Where(x => char.IsLetterOrDigit(x) 
                                         || char.IsWhiteSpace(x)).ToArray());

答案 2 :(得分:0)

两者都适合我。 我的最终代码:

{{1}}