当前位置: 代码迷 >> ASP.NET >> C#如何对页面文本框输入的字符串进行验证
  详细解决方案

C#如何对页面文本框输入的字符串进行验证

热度:6694   发布时间:2013-02-25 00:00:00.0
C#怎么对页面文本框输入的字符串进行验证?
C# code
using System;using System.Collections;using System.Configuration;using System.Data;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using WF_BLL;using WF_Model;using System.Text.RegularExpressions;public partial class Login : System.Web.UI.Page{    protected void Page_Load(object sender, EventArgs e)    {    }protected void btn_Login_Click(object sender, EventArgs e)    {        if (!(checking(this.txt_Username.Text.Trim()) || checkings(this.txt_Username.Text.Trim())))        {            Response.Write("<script> alert('只能是数字、字母、下划线、汉字!')</script>");        }        else        {            UserInfo info = new UserInfo();            info.UserName = this.txt_Username.Text.Trim();            info.PassWord = this.txt_Password.Text.Trim();            Login_BLL login = new Login_BLL();            bool value = login.Login(info);            if (!value)            {                Response.Write("<script> alert('注册成功!')</script>");            }            else            {                Response.Write("<script> alert('注册失败!')</script>");            }        }    }    public static bool checking(string strings)     {        return Regex.IsMatch(strings, @"^[0-9a-zA-Z_]+$");    }    public static bool checkings(string strings)     {        return Regex.IsMatch(strings, @"^[\u4e00-\u9fa5],{0,}$");    }}



我想要验证输入的字符串是不是数字、字母、下划线或者是汉字。要是不是上诉四种,就弹出提示,不让注册!
该怎么写啊!!!!
请各位,赐教!!!!!!!!!!!!!!!!!!!!!!!!!
感激不尽!!!!!

------解决方案--------------------------------------------------------
楼主怎么不在js里面判断呢!你这种在服务器端验证的不是影响效率吗?

------解决方案--------------------------------------------------------
Regex.IsMatch(strings, @"^\w+$");

------解决方案--------------------------------------------------------
^([\u4e00-\u9fa50-9a-zA-Z_])$

------解决方案--------------------------------------------------------
正则表达式
------解决方案--------------------------------------------------------
验证空间 RegularExpressionValidator 将正则表达式写在属性ValidatonExpression中
------解决方案--------------------------------------------------------
探讨
验证空间 RegularExpressionValidator 将正则表达式写在属性ValidatonExpression中

------解决方案--------------------------------------------------------

弹出窗体:
Page.ClientScript.RegisterStartupScript(this.GetType(), "UpdateSucceed", "<script>alert('Update time succeed!')</script>");
------解决方案--------------------------------------------------------
Regex str2 = new Regex(@"^[\w\u4E00-\u9FFF]+$");
------解决方案--------------------------------------------------------
现在验证的基本3方法:
1.验证控件
2.正则表达式
3.自己根据需要写函数或者类。
------解决方案--------------------------------------------------------
探讨
引用:
Response.Write("...");
很难想象,今天还有人用这种JS污染的丑陋写法。


没办法,我只能这样才能弹出窗体,请问你有更好的弹出窗口的方法么,可以分享一下么?

感激不尽!

------解决方案--------------------------------------------------------
实在还是可以用asp.net的验证控件加上正则表达式
  相关解决方案