NET网站正则去除汉字和只取数字

来源:互联网 发布:孙杨 兴奋剂 知乎 编辑:程序博客网 时间:2024/05/16 13:39

在ASP.NET网站中如何去除字符中的汉字,怎么只取字符中的数字,这是本篇文章的主题,C#中可以利用正则表达式来实现这个功能。

首先注释一下,正则表达式[\u4e00-\u9fa5]表示匹配中文,则正则表达式[^\u4e00-\u9fa5]表示匹配非中文,既去除汉字。用Replace方法将匹配的非中文替换为空字符串,也就是去除了文本中的非中文字符。

string _s= Regex.Replace(_s, @"[\u4e00-\u9fa5]", ""); //去除汉字

string _s= Regex.Replace(_s, @"[^\u4e00-\u9fa5]", ""); //只留汉字

string ph = Regex.Replace(ph, @"\D", ""); //排除除数字外的所有字符

txt1.Text = Regex.Replace(txt1.Text, "[0-9]", "", RegexOptions.IgnoreCase);//去掉0-9的数字
txt1.Text = Regex.Replace(txt1.Text, "[a-z]", "", RegexOptions.IgnoreCase);//去掉a-z的字母

去除汉字、只留汉字、只取数字的正则表达式介绍如上,ASP.NET C#中可以用上述方法实现。

转自:http://www.dhypl.com/viewloger575_6.aspx

code:

page_load()

{

string ph="1231sfsdg3dfs4fdsg45dsfhgs98;fdgh98k";
        //TextBox1.Text=Regex.Replace(ph, @"\D", "/");
        string s = Regex.Replace(ph, @"\D", "/");
        string[] array = s.Split(new char[] { '/' });
        s = "";
        for (int i = 0; i < array.Length; i++)
        {
            if (array[i] != "")
            {
                s = s +" "+ array[i].ToString();
            }
        }
        TextBox1.Text = s.Trim();
        string[] array1 = TextBox1.Text.Split(new char[] { ' ' });
        for (int j = 0; j < array1.Length; j++)
        {
            Response.Write("<script>alert('"+array1[j].ToString()+"')</script>");
        }

}