ASP.NET:利用RegexStringValidator验证字符串格式

时间: 2008-07-17 / 分类: 学习心得 / 浏览次数: 3,374 / 0个评论 发表评论

(1)判断字符串是不是邮箱格式:设定邮箱的正则表达式为RegexStringValidator的参数,然后对需要验证的字符串进行验证就可以了,方法很简单:

private bool EmailDetecton(string str)
{
string pattern = @^[a-zA-Z\.\-_]+@([a-zA-Z\.\-_]+\.)+[a-zA-Z]{2,4}$;
RegexStringValidator rsv = new
RegexStringValidator(pattern);
try
{
rsv.Validate(str.GetType());
return true;
}
catch
{
return false;
}
}

这个恰好是微软MSDN给出来的例子,登陆MSDN查看就行了,一目了然。或者在我这里看也可以,下面是代码。很简单,就是设定需要验证字符串的正则表达式,然后验证字符串是够满足就可以了。

using System;
using System.Configuration;
namespace
Microsoft.Samples.AspNet.Validators
{
  class
UsingRegexStringValidator
  {
static void
Main(string[] args)
{
 
// Display title.
 
Console.WriteLine(ASP.NET Validators);
 
Console.WriteLine();

 
// Create RegexString and Validator.
 
string testString = someone@example.com;
 
string regexString =
  
@^[a-zA-Z\.\-_]+@([a-zA-Z\.\-_]+\.)+[a-zA-Z]{2,4}$;
 
RegexStringValidator myRegexValidator =
  
new RegexStringValidator(regexString);

 
// Determine if the object to validate can be validated.
 
Console.WriteLine(CanValidate: {0},
myRegexValidator.CanValidate(testString.GetType()));

 
try
 
{
// Attempt validation.
myRegexValidator.Validate(testString);
Console.WriteLine(Validated.);
 
}
 
catch (ArgumentException e)
 
{

// Validation failed.
 
}

 
// Display and wait
 
Console.ReadLine();
}
  }
}

(2)同理,要验证字符串是不是数字串,只要设定正则表达式为:@^[0-9]\d*[.]?\d*$就OK了。

历史上的今天

2016年:快乐星期天423期:段子(141)(13条评论)

2015年:不作死就不会死(93条评论)

2012年:文摘手打033:把握幼儿最早的交际欲望(15条评论)

2011年:快乐星期天162期:一周美女秀专辑(2)(97条评论)

2010年:PortableApps.com 平台 2.0 (Leo) Beta 5 测试发布[译文147](36条评论)

2009年:山东省2009年高考的几条新闻(3条评论)

2009年:在博客和网站上添加代码提醒升级 IE6 或者更换浏览器(6条评论)

2009年:Feedjit 网站博客边栏工具(6条评论)

发表评论

您的昵称 *

您的邮箱 *

您的网站