以下代码示例使用 Match.Result 来从 URL 提取协议和端口号。例如,“http://www.contoso.com:8080/letters/readme.html”将返回“http:8080”。    String Extension(String url) 
    {
        Regex r = new Regex(@"^(?<proto>\w+)://[^/]+?(?<port>:\d+)?/",
            RegexOptions.Compiled);
        return r.Match(url).Result("${proto}${port}"); 
    }面的代码示例使用静态 Regex.IsMatch 方法验证一个字符串是否为有效电子邮件格式。如果字符串包含一个有效的电子邮件地址,则 IsValidEmail 方法返回 true,否则返回 false,但不采取其他任何操作。您可以使用 IsValidEmail,在应用程序将地址存储在数据库中或显示在 ASP.NET 页中之前,筛选出包含无效字符的电子邮件地址。[C#]
bool IsValidEmail(string strIn)
{
    // Return true if strIn is in valid e-mail format.
    return Regex.IsMatch(strIn, @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$"); 
}

解决方案 »

  1.   

    抢分。Email:“^\w+(\-|\.|_)?\w+\@[A-z\d]+\-?[A-z\d]+\.[A-z\d]{2,}$”URL:  “ (?:(?<protocol>http(?:s?)|ftp)(?:\:\/\/))
    (?:(?<usrpwd>\w+\:\w+)(?:\@))?
    (?<domain>[^/\r\n\:]+)?
    (?<port>\:\d+)?
    (?<path>(?:\/.*)*\/)?
    (?<filename>.*?\.(?<ext>\w{2,4}))?
    (?<qrystr>\??(?:\w+\=[^\#]+)(?:\&?\w+\=\w+)*)*
    (?<bkmrk>\#.*)?”
     
    另外,想知道Regular Expression怎么写吗?
    到www.regexlib.com去看看吧!
      

  2.   

    asp.net验证控件生成的如下:
    [\w\.-]+(\+[\w-]*)?@([\w-]+\.)+[\w-]+
      

  3.   

    验证Email
    ^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-z
    A-Z]\.)+[a-zA-Z]{2,9})$
      

  4.   

    验证url:^(((ht|f)tp(s?))\://)?(www.|[a-zA-Z].)[a-zA-Z0-9\-\.]+\.(com
    |edu|gov|mil|net|org|biz|info|name|museum|us|ca|uk)(\:[0-9]+
    )*(/($|[a-zA-Z0-9\.\,\;\?\'\\\+&%\$#\=~_\-]+))*$