再议正则表达式(这次是在asp.net 上的应用)
前面我们讲过asp中使用正则表达式,现在我们
在asp.net 下通过C# 来体验一下在 asp+ 中的正则表达式是如何使用的。
首先利用 Regex 类的重载构造函数来创建一个我们对要用正则表达式进行判断的 一个对象,代码如下:
Regex r=new Regex(\"^([a-z0-9_]|//-|//.)+@(([a-z0-9_]|//-)+//.)+[a-z]{2,4}$\"); //这个是判断是否是 合法的 mail地址
这个正则表达式是我们在前面的文章中利用过的判断Email地址是否合法的判断表达式,关于这个表达式的具体含义
请查看文章 asp中使用正则表达式.
在这里请注意下一些细小的差别,在C#语言中,\"/\" 被赋予了特殊的转义含义,比如\"/n\",等等,为了能够在正则表达式中
正确的对\"/\",进行理解,我们必须使用\"//\"符号来表达一个\"/\" 符号
下面我们来查看以下我们的这个完整的代码:
<script language=\"c#\" runat=server>
protected void Page_Load(Object Src, EventArgs E){
if(judgeMail(\"webmaster@asp888.net\"))
showmsg.Text=\"合法地址\";
}
bool judgeMail(String strMail){
//Regex r=new Regex(\"^[a-zA-Z]//w{3,15}$\"); //这个是 判断密码的问题
Regex r=new Regex(\"^([a-z0-9_]|//-|//.)+@(([a-z0-9_]|//-)+//.)+[a-z]{2,4}$\"); //这个是判断是否是 合法的 mail地址
return r.IsMatch(strMail);
}
</script>
<Asp:Label id=showmsg runat=server Text=\"非法地址\" />