Helper类代码
   public class Helper
{
#region 单列循环
private Helper() { } private static Helper instance = null;
/// <summary>
/// 静态实例化单体模式
/// 保证应用程序操作某一全局对象,让其保持一致而产生的对象
/// </summary>
/// <returns></returns>
public static Helper GetInstance()
{
if (instance == null)
{
instance = new Helper();
}
return instance;
}
#endregion #region 是否为汉字
/// <summary>
/// 验证输入的是否为汉字
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
public bool IsChinese(string input)
{
return IsMatch(@"^[\u4e00-\u9fa5]+$", input);
}
#endregion #region 是否为手机号码
/// <summary>
/// 验证是否为手机号码
/// </summary>
/// <param name="mobile">输入的手机号码</param>
/// <returns></returns>
public bool IsMobile(string mobile)
{
string reg = "^1[3|4|5|7|8][0-9]\\d{8}$";
return IsMatch(reg, mobile);
}
#endregion #region 是否为电话号码
/// <summary>
/// 验证是否为电话号码
/// </summary>
/// <param name="phone">电话号码</param>
/// <returns></returns>
public bool IsPhone(string phone)
{
string regex = "^(\\d{3,4}-)\\d{7,8}$";
return IsMatch(regex, phone);
}
#endregion #region 是否为数字
/// <summary>
/// 是否为数字
/// </summary>
/// <param name="number"></param>
/// <returns></returns>
private bool IsNumber(string number)
{
string regex = "^-?\\d+$|^(-?\\d+)(\\.\\d+)?$";
return IsMatch(regex, number);
}
#endregion #region 匹配非负整数
/// <summary>
/// 匹配非负整数
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
public bool IsNotNagtive(string input)
{
return IsMatch(@"^\d+$", input);
}
#endregion #region 匹配正整数
/// <summary>
/// 匹配正整数
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
public bool IsUnit(string input)
{
return IsMatch(@"^[0-9]*[1-9][0-9]*$", input);
}
#endregion #region 字符是否包含英文
/// <summary>
/// 判断输入字符是否包含英文
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
public bool IsHaveEnglish(string input)
{
return IsMatch(@"^[A-Za-z]+$", input);
}
#endregion #region 是否为Email
/// <summary>
/// 是否为Email
/// </summary>
/// <param name="mail"></param>
/// <returns></returns>
public bool IsEmail(string mail)
{
string regex = @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";
return IsMatch(regex, mail);
}
#endregion #region 判断是否包含数字和英文字母
/// <summary>
/// 判断是否包含数字和英文字母
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
public bool IsNumAndEng(string input)
{
return IsMatch(@"^[A-Za-z0-9]+$", input);
}
#endregion #region 判断是否为url
/// <summary>
/// 判断是否为超链接
/// </summary>
/// <param name="url"></param>
/// <returns></returns>
public bool IsUrl(string url)
{
string regex = @"[a-zA-z]+://[^\s]*";
return IsMatch(regex, url);
}
#endregion #region 判断输入的字符串是否是一个合法IP地址
/// <summary>
/// 判断输入的字符串是否是一个合法IP地址
/// </summary>
/// <param name="ip"></param>
/// <returns></returns>
public bool IsIPV4(string ip)
{
string[] ips = ip.Split(',');
for (int i = ; i < ips.Length; i++)
{
if (!IsMatch(@"^\d+$", ips[i]))
{
return false;
}
if (Convert.ToUInt16(ips[i]) > )
{
return false;
}
}
return true;
}
#endregion #region 判断输入的字符串是否是一个合法的IPV6地址
/// <summary>
/// 判断输入的字符串是否是一个合法的IPV6地址
/// </summary>
/// <param name="ip"></param>
/// <returns></returns>
public bool IsIPV6(string ip)
{
string pattern = "";
string temp = ip;
string[] strs = temp.Split(':');
if (strs.Length > )
{
return false;
}
int count = Helper.GetStringCount(ip, "::");
if (count > )
{
return false;
}
else if (count == )
{
pattern = @"^([\da-f]{1,4}:){7}[\da-f]{1,4}$";
return IsMatch(pattern, ip);
}
else
{
pattern = @"^([\da-f]{1,4}:){0,5}::([\da-f]{1,4}:){0,5}[\da-f]{1,4}$";
return IsMatch(pattern, ip);
}
}
#endregion /// <summary>
/// 调用Regex中IsMatch函数实现一般的正则表达式匹配
/// </summary>
/// <param name="pattern">要匹配的正则表达式模式。</param>
/// <param name="input">要搜索匹配项的字符串</param>
/// <returns>如果正则表达式找到匹配项,则为 true;否则,为 false。</returns>
public static bool IsMatch(string pattern, string input)
{
if (input == null || input == "")
return false;
Regex regex = new Regex(pattern);
return regex.IsMatch(input);
} /// <summary>
/// 从输入字符串的第一个字符开始,用替换字符串替换指定的正则表达式模式的所有匹配项
/// </summary>
/// <param name="pattern">模式字符串</param>
/// <param name="input">输入字符串</param>
/// <param name="replacement">用于替换的字符串</param>
/// <returns>返回替换后的结果</returns>
public static string Replace(string pattern, string input, string replacement)
{
Regex regex = new Regex(pattern);
return regex.Replace(input, replacement);
} /// <summary>
/// 在由正则表达式模式定义的位置拆分输入字符串
/// </summary>
/// <param name="pattern">模式字符串</param>
/// <param name="input">输入字符串</param>
/// <returns></returns>
public static string[] Split(string pattern, string input)
{
Regex regex = new Regex(pattern);
return regex.Split(input);
} /// <summary>
/// 判断compare在input中出现的次数
/// </summary>
/// <param name="input">源字符串</param>
/// <param name="compare">用于比较的字符串</param>
/// <returns>字符串compare在input中出现的次数</returns>
public static int GetStringCount(string input, string compare)
{
int index = input.IndexOf(compare);
if (index != -)
{
return + GetStringCount(input.Substring(index + compare.Length), compare);
}
else
{
return ;
}
} //private static string GetRegularFormula(string RegulatFormula)
//{
// string str = "";
// if (RegulatFormula.ToUpper().IndexOf("RegularFormula".ToUpper()) > -1)
// {
// RegularFormula formula = new RegularFormula();
// }
//}
}
  测试代码
     protected void btnVerification_Click(object sender, EventArgs e)
{
string chinese = txtChinese.Text.Trim();
string english = txtEnglish.Text.Trim();
string numEng = txtNumAndEng.Text.Trim();
string num = txtInteger.Text.Trim();
string mobile = txtMobile.Text.Trim();
string phone = txtPhome.Text.Trim();
string emil = txtMail.Text.Trim();
string url = txtUrl.Text.Trim();
if (Helper.GetInstance().IsChinese(chinese))
{
Response.Write("输入的中文正确:" + chinese + "<br/>");
}
else
{
Response.Write("请输入全中文<br/>");
}
if (Helper.GetInstance().IsHaveEnglish(english))
{
Response.Write("输入的为英文字符串:" + english + "<br/>");
}
else
{
Response.Write("请输入全英文<br/>");
}
if (Helper.GetInstance().IsNumAndEng(numEng))
{
Response.Write("数字字母混合:" + numEng + "<br/>");
}
else
{
Response.Write("不是正确的数字字母混合<br/>");
}
if (Helper.GetInstance().IsUnit(num))
{
Response.Write("输入的为正整数:" + num + "<br/>");
}
else if (Helper.GetInstance().IsNotNagtive(num))
{
Response.Write("输入的为负整数:" + num + "<br/>");
}
else
{
Response.Write("数字输入有误<br/>");
}
if (Helper.GetInstance().IsMobile(mobile))
{
Response.Write("手机号码为:" + mobile + "<br/>");
}
else
{
Response.Write("手机号码不正确<br/>");
}
if (Helper.GetInstance().IsPhone(phone))
{
Response.Write("电话号码为:" + phone + "<br/>");
}
else
{
Response.Write("电话号码有误<br/>");
}
if (Helper.GetInstance().IsEmail(emil))
{
Response.Write("邮箱地址为:" + emil + "<br/>");
}
else
{
Response.Write("邮箱地址有误<br/>");
}
if (Helper.GetInstance().IsUrl(url))
{
Response.Write("url地址为:" + url + "<br/>");
}
else
{
Response.Write("请输入正确的url地址");
}
}

结果图如下:

验证中文、英文、电话、手机、邮箱、数字、数字和字母、Url地址和Ip地址的正则表达式的更多相关文章

  1. iOS 开发 常用的正则验证表达式:电话 、邮箱等等

    #pragma mark - 验证手机号 +(BOOL)checkForMobilePhoneNo:(NSString *)mobilePhone{ NSString *regEx = @" ...

  2. js正则判断电话/手机/邮箱/

    用途:校验ip地址的格式 输入:strIP:ip地址返回:如果通过验证返回true,否则返回false:*/ function isIP(strIP) { if (isNull(strIP)) ret ...

  3. Andorid 手机WIFI连接的Mac地址和IP地址

    public static String getInfo()     {        WifiManager wifi = (WifiManager) getSystemService(Contex ...

  4. WPF数字输入框和IP地址输入框

    数字输入框 简介 在业务中,我们经常需要限制用户的输入,比如限制输入长度,限制只能输入数字等等.限制输入长度WPF内置的TextBox已经帮我们解决了,但是限制输入数字却并未在WPF中内置解决方案.使 ...

  5. (C#)IP地址与数字地址相互转换

    站长网IP查询地址:http://tool.chinaz.com/ip/ 和ip地址转换为数字的工具地址:http://www.msxindl.com/tools/ip/ip_num.asp 可以看到 ...

  6. 如何查看连接到手机热点的ip地址

    因为最近玩树莓派,需要手机做热点,然后用树莓派连接到这个热点上,苦于不知道树莓派被分配了什么样的ip地址,经过一番探索,我发现了两种办法, 安装一个 android terminal( 安卓命令行), ...

  7. C#验证字符串是否是数字,是否包括中文,是否是邮箱格式,是否是电话格式

    using System;     using System.Web;     using System.Text;     using System.Web.UI.WebControls;     ...

  8. 常用正则表达式大全,手机、电话、邮箱、身份证(最严格的验证)、IP地址、网址、日期等

    <script type="text/javascript">/* * 手机号码格式 * 只允许以13.15.18开头的号码 * 如:13012345678.15929 ...

  9. sql 查询字段是中文/英文/数字 正则表达式

    一.包含中文字符 select * from 表名 where 列名 like '%[吖-座]%' 二.包含英文字符 select * from 表名 where 列名 like '%[a-z]%' ...

随机推荐

  1. PHP.12-PHP-设计文件上传类

    设计文件上传类 [PHP参数详解]{文件上传} ********************** *#构造方法编写 ********************** 此种传参方法规定必须用户必须按响应位置输入 ...

  2. B - 娜娜梦游仙境系列——跳远女王

    B - 娜娜梦游仙境系列——跳远女王 Time Limit: 2000/1000MS (Java/Others)    Memory Limit: 128000/64000KB (Java/Other ...

  3. SQL 必知必会-- 第1课:数据库基础和什么是SQL

    第1课 了解SQL 1 1.1 数据库基础 11.2 什么是SQL 61.3 动手实践 71.4 小结 8 第一课主要是一些概念,具体笔记如下: 1,数据库(database):保存有组织的数据的容器 ...

  4. 【Android 界面效果34】Android里Service的bindService()和startService()混合使用深入分析

    .先讲讲怎么使用bindService()绑定服务 应用组件(客户端)可以调用bindService()绑定到一个service.Android系统之后调用service的onBind()方法,它返回 ...

  5. 常见的 HTTP错误代码大全

    一些常见的状态码为: - 服务器成功返回网页 - 请求的网页不存在 - 服务不可用 详细分解: 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态代码. 代码 说明 (继续) 请求者应当继 ...

  6. 《MFC游戏开发》笔记七 游戏特效的实现(一):背景滚动

    本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9344721 作者:七十一雾央 新浪微博:http:// ...

  7. EL 标准格式时间 转换成 常用时间yyyy-MM-dd

    <%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt"%><fmt:format ...

  8. 树形菜单复选框级联选择HTML

    模块标题 标识符 类别 链接 排序 系统管理   组   1 用户权限设定 Sys_UserModelConfigList 模块 Sys_UserModelConfigList.aspx 1 角色管理 ...

  9. Table of Contents - Git

    Downloading and  Installing Git Download for Linux and Unix Integration with Eclipse Eclipse 提交工程至 G ...

  10. asp.net的简单分页程序

    *.apsx页面 1: <%@ Page Language="C#" Debug ="true" AutoEventWireup="true&q ...