- 浏览: 41072 次
文章分类
最新评论
using System;
using System.Text;
using System.Text.RegularExpressions;
namespace Dachie.Common
{
/// <summary>
/// Common 的摘要说明。
/// </summary>
public class RegexComm
{
//private const string REG_DATE = @"^(\d{2}|\d{4})[\-\/]((0?[1-9])|(1[0-2]))[\-\/]((0?[1-9])|((1|2)[0-9])|30|31)$";
private const string REG_DATE = @"^(\d{2}|\d{4})((0[1-9])|(1[0-2]))((0[1-9])|((1|2)[0-9])|30|31)$";
private const string REG_PHONE = @"^((0[0-9]{2,3}){0,1}([0-9]{7,8}))$";
private const string REG_EMAIL = @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";
private const string REG_MOBILE = @"(^0{0,1}13[0-9]{9}$)";
private const string REG_IDCARD = @"^([0-9]{14}|[0-9]{17})(x|[0-9]){1}$";
private const string REG_TIME = @"^((([0-1]?[0-9])|(2[0-3]))([\:])([0-5][0-9]))$";
#region 半角验证
/// <summary>
/// 半角验证
/// </summary>
/// <param name="str">验证的字符串</param>
/// <returns></returns>
public static bool IsDBC(string str)
{
UTF8Encoding encoding = new UTF8Encoding();
int byteCount = encoding.GetByteCount(str);
int strLen = str.Length;
if(strLen == byteCount)
{
return true;
}
return false;
}
#endregion
#region 全角验证
/// <summary>
/// 全角验证
/// </summary>
/// <param name="str">验证的字符串</param>
/// <returns></returns>
public static bool IsSBC(string str)
{
UTF8Encoding encoding = new UTF8Encoding();
int byteCount = encoding.GetByteCount(str);
int strLen = str.Length;
if(byteCount == strLen * 3 )
{
return true;
}
return false;
}
#endregion
#region 日期字符串有效性验证
/// <summary>
/// 日期字符串有效性验证
/// </summary>
/// <param name="date">日期字符串</param>
/// <returns>有效:true,否则:false</returns>
public static bool IsValidDate(string date)
{
return Regex.IsMatch(date, RegexComm.REG_DATE);
}
#endregion
#region Email有效性验证
/// <summary>
/// Email有效性验证
/// </summary>
/// <param name="email">Email字符串</param>
/// <returns>有效:true,否则:false</returns>
public static bool IsValidEmail(string email)
{
return Regex.IsMatch(email, RegexComm.REG_EMAIL);
}
#endregion
#region 电话号码有效性验证
/// <summary>
/// 电话号码有效性验证
/// </summary>
/// <param name="phone">电话号码字符串</param>
/// <returns>有效:true,否则:false</returns>
public static bool IsVaildPhone(string phone)
{
return Regex.IsMatch(phone, RegexComm.REG_PHONE);
}
#endregion
#region 手机号码有效性验证
/// <summary>
/// 手机号码有效性验证
/// </summary>
/// <param name="mobile">手机号码字符串</param>
/// <returns>有效:true,否则:false</returns>
public static bool IsValidMobile(string mobile)
{
return Regex.IsMatch(mobile,REG_MOBILE);
}
#endregion
#region 身份证号有效性验证
/// <summary>
/// 身份证号有效性验证
/// </summary>
/// <param name="idCard">身份证号字符串</param>
/// <returns>有效:true,否则:false</returns>
public static bool IsValidIdCard(string idCard)
{
return Regex.IsMatch(idCard, RegexComm.REG_IDCARD);
}
#endregion
#region 日期字符串转换成日期对象
/// <summary>
/// 日期字符串转换成日期对象
/// </summary>
/// <param name="date">日期字符串</param>
/// <returns>日期对象</returns>
public static DateTime CastDateTime(string date)
{
StringBuilder builder = new StringBuilder();
builder.Append(date.Substring(0,4));
builder.Append("-");
builder.Append(date.Substring(4,2));
builder.Append("-");
builder.Append(date.Substring(6,2));
return Convert.ToDateTime(builder.ToString());
}
#endregion
#region 日期对象转化成日期字符串
/// <summary>
/// 日期对象转化成日期字符串
/// </summary>
/// <param name="date">日期对象</param>
/// <returns>日期字符串</returns>
public static string CastDateTime(DateTime date)
{
string strDate = date.ToString("yyyy-MM-dd");
strDate = strDate.Replace("-","");
return strDate;
}
#endregion
#region 时间格式验证
/// <summary>
/// 时间格式验证
/// </summary>
/// <param name="time">时间字符串</param>
/// <returns>正确:true,错误:false</returns>
public static bool IsValidTime(string time)
{
return Regex.IsMatch(time,REG_TIME);
}
#endregion
}
}
using System.Text;
using System.Text.RegularExpressions;
namespace Dachie.Common
{
/// <summary>
/// Common 的摘要说明。
/// </summary>
public class RegexComm
{
//private const string REG_DATE = @"^(\d{2}|\d{4})[\-\/]((0?[1-9])|(1[0-2]))[\-\/]((0?[1-9])|((1|2)[0-9])|30|31)$";
private const string REG_DATE = @"^(\d{2}|\d{4})((0[1-9])|(1[0-2]))((0[1-9])|((1|2)[0-9])|30|31)$";
private const string REG_PHONE = @"^((0[0-9]{2,3}){0,1}([0-9]{7,8}))$";
private const string REG_EMAIL = @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";
private const string REG_MOBILE = @"(^0{0,1}13[0-9]{9}$)";
private const string REG_IDCARD = @"^([0-9]{14}|[0-9]{17})(x|[0-9]){1}$";
private const string REG_TIME = @"^((([0-1]?[0-9])|(2[0-3]))([\:])([0-5][0-9]))$";
#region 半角验证
/// <summary>
/// 半角验证
/// </summary>
/// <param name="str">验证的字符串</param>
/// <returns></returns>
public static bool IsDBC(string str)
{
UTF8Encoding encoding = new UTF8Encoding();
int byteCount = encoding.GetByteCount(str);
int strLen = str.Length;
if(strLen == byteCount)
{
return true;
}
return false;
}
#endregion
#region 全角验证
/// <summary>
/// 全角验证
/// </summary>
/// <param name="str">验证的字符串</param>
/// <returns></returns>
public static bool IsSBC(string str)
{
UTF8Encoding encoding = new UTF8Encoding();
int byteCount = encoding.GetByteCount(str);
int strLen = str.Length;
if(byteCount == strLen * 3 )
{
return true;
}
return false;
}
#endregion
#region 日期字符串有效性验证
/// <summary>
/// 日期字符串有效性验证
/// </summary>
/// <param name="date">日期字符串</param>
/// <returns>有效:true,否则:false</returns>
public static bool IsValidDate(string date)
{
return Regex.IsMatch(date, RegexComm.REG_DATE);
}
#endregion
#region Email有效性验证
/// <summary>
/// Email有效性验证
/// </summary>
/// <param name="email">Email字符串</param>
/// <returns>有效:true,否则:false</returns>
public static bool IsValidEmail(string email)
{
return Regex.IsMatch(email, RegexComm.REG_EMAIL);
}
#endregion
#region 电话号码有效性验证
/// <summary>
/// 电话号码有效性验证
/// </summary>
/// <param name="phone">电话号码字符串</param>
/// <returns>有效:true,否则:false</returns>
public static bool IsVaildPhone(string phone)
{
return Regex.IsMatch(phone, RegexComm.REG_PHONE);
}
#endregion
#region 手机号码有效性验证
/// <summary>
/// 手机号码有效性验证
/// </summary>
/// <param name="mobile">手机号码字符串</param>
/// <returns>有效:true,否则:false</returns>
public static bool IsValidMobile(string mobile)
{
return Regex.IsMatch(mobile,REG_MOBILE);
}
#endregion
#region 身份证号有效性验证
/// <summary>
/// 身份证号有效性验证
/// </summary>
/// <param name="idCard">身份证号字符串</param>
/// <returns>有效:true,否则:false</returns>
public static bool IsValidIdCard(string idCard)
{
return Regex.IsMatch(idCard, RegexComm.REG_IDCARD);
}
#endregion
#region 日期字符串转换成日期对象
/// <summary>
/// 日期字符串转换成日期对象
/// </summary>
/// <param name="date">日期字符串</param>
/// <returns>日期对象</returns>
public static DateTime CastDateTime(string date)
{
StringBuilder builder = new StringBuilder();
builder.Append(date.Substring(0,4));
builder.Append("-");
builder.Append(date.Substring(4,2));
builder.Append("-");
builder.Append(date.Substring(6,2));
return Convert.ToDateTime(builder.ToString());
}
#endregion
#region 日期对象转化成日期字符串
/// <summary>
/// 日期对象转化成日期字符串
/// </summary>
/// <param name="date">日期对象</param>
/// <returns>日期字符串</returns>
public static string CastDateTime(DateTime date)
{
string strDate = date.ToString("yyyy-MM-dd");
strDate = strDate.Replace("-","");
return strDate;
}
#endregion
#region 时间格式验证
/// <summary>
/// 时间格式验证
/// </summary>
/// <param name="time">时间字符串</param>
/// <returns>正确:true,错误:false</returns>
public static bool IsValidTime(string time)
{
return Regex.IsMatch(time,REG_TIME);
}
#endregion
}
}
发表评论
-
C# GDI设计的高级时钟,很有用收藏了。
2015-03-09 12:44 703效果图: 接着上次的简单时钟,这次要高级多了,算法更正 ... -
怎样提高WebService的性能
2015-02-03 13:51 1807服务器端WebService程序: using Syste ... -
ASP.net网站性能提高办法 无意中从网上浏览到了一篇提高网站性能的帖子转来学习下。
2015-01-16 13:42 513ASP.net网站性能提高办法 无意中从网上浏览到了一篇提高网 ... -
asp.net创建缩略图
2015-01-16 12:01 375记录一个保存缩略图通用的函数。 + View C ... -
让ADO.NET Entity Framework支持Oracle数据库 好东西收藏了
2015-01-16 11:35 509项目需要基于.NET平台,个人的习惯是能用微软自带的就不用第三 ... -
使用SqlBulkCopy导入大数据要注意
2015-01-13 14:17 571第一次用挺好,第二次就出问题了:我的表里边已经有数据,而且加了 ... -
不要让你的错误处理把错误给吃了,千万注意不然费时费力
2015-01-13 10:48 586开发中老鸟总是说你的程序怎么不够友好,都不加错误处理,给用户报 ... -
用微软提供的批量把数据导入到数据库方法SqlBulkCopy真是好用好快
2015-01-13 09:59 2596平时老是碰到把一批数据插入到数据库。通常的办法是循环一条条插进 ... -
SQL Server类型与C#类型对应关系 好东西收藏了
2015-01-13 09:14 1567SQL Server类型 C#类型 bit bool tiny ... -
asp.net 中URL 编码窗体数据无效提示错误处理记录
2015-01-12 15:50 770一个系统,其他用户都没有问题,就是一个用户说报错 后来查 ... -
CSV文件转换类
2015-01-12 13:01 822/// <summary> /// ... -
最全的日期年农历假日节气星座等计算类封装
2015-01-12 09:27 556/// <summary> /// 农历属 ... -
用调用浏览器打印页面1
2015-01-12 08:08 722<!--media=print 这个属性可以在打印时有效 ... -
Asp.net事假的执行顺序,非常重要这个算是高级编程部分
2015-01-09 09:47 744ASP.NET 母版页和内容页中的事件 母版页和内容页都可以 ... -
用NPOI把数据库内容导入到Excel中实例(NPOI版本2.0)
2015-01-08 14:30 610注意 [url=http://dl.iteye.com/top ... -
开发中货币样式看似简单,没弄过的往往花费比较长时间,本人处理了,贴出来大家分享,也方便自己以后查用
2015-01-08 11:00 494开发中货币样式看似简单,没弄过的往往花费比较长时间,本人处理了 ... -
写流文件的方式把页面中的数据导到Excel的终极代码
2015-01-06 11:12 1127在开发一个小项目的时候,当时说功能简单,但是要实现数据导出功 ...
相关推荐
在IT行业中,身份证验证器是一种常见的实用工具,主要用于验证个人身份证号码的合法性,并根据有效身份证号码解析出对应的身份信息,如出生日期、性别以及户籍所在地等。本项目以C#编程语言实现,提供了用户友好的...
C# 源码 判断 身份证号 有效性 包含:长度 校验位 出生日期 省份 等判断算法
这种协议最初设计用于低速串行通信,但由于其简单性和有效性,至今仍被一些嵌入式系统和通信软件所采用。 在XModem协议中,发送方首先计算待发送数据的CRC16值,然后将其附加到数据块的末尾。接收方接收到数据后,...
- 服务器接收到请求后,验证令牌的有效性,包括检查签名、过期时间等。 - 如果验证通过,服务器处理请求;否则,返回错误信息。 5. **Nginx配置令牌验证**: - 在Nginx配置中,可以设置HTTP头检查,确保每个请求...
ASP.NET C#是一种广泛用于构建...综上所述,通过理解和实现上述步骤,你可以使用ASP.NET C#编写一个有效的VIN验证功能,以确保输入的VIN符合汽车行业标准。这不仅有助于提高数据准确性,还能提升用户对系统的信任度。
标题"\"c# 校验文本是否为合法json格式\""所涉及的主要知识点是使用C#进行JSON验证。以下将详细介绍如何实现这一功能: 1. **System.Text.Json库**:自C# .NET Core 3.0以来,微软引入了新的System.Text.Json库作为...
这主要涉及到数据校验,以确保数据的有效性和安全性。本篇将详细讲解C#.NET验证控件中用于邮箱地址验证和身份证验证的常用正则表达式,以及可能涉及的出生日期验证。 一、邮箱地址验证 在C#.NET中,可以使用正则...
校验和算法在计算机科学中扮演着至关重要的角色,特别是在数据传输、存储和验证数据完整性时。在C#编程环境中,实现校验和算法能够帮助开发者确保数据在处理过程中的准确性,防止因传输错误或硬件故障导致的数据损坏...
数据验证的重要性在于它能防止无效或不合法的数据进入系统,保护应用程序的稳定性和数据的完整性。在WinForm应用中,通常会使用控件自带的验证规则,但这种做法往往不够灵活,无法满足复杂的应用场景。因此,构建一...
本篇将详细介绍如何使用C#进行邮箱地址的有效性和真实性校验。 首先,我们来看邮箱地址的基本验证。在C#中,可以使用正则表达式(Regex)类来检查邮箱地址的格式是否符合标准。以下是一个简单的正则表达式,用于...
C#提供了数据注解(Data Annotations)和验证器(Validator)类,可以对模型属性进行验证,如必填、长度限制、电子邮件格式等。此外,在ASP.NET MVC和ASP.NET Core中,服务器端和客户端验证都可以轻松实现,提供良好...
总结,通过上述C#代码,我们可以有效地对用户的邮箱和密码进行正则表达式验证,确保输入数据的准确性和安全性。在实际项目中,还可以根据具体需求调整正则表达式,以适应更复杂的验证规则。此外,为了提高用户体验,...
1. **15位身份证验证**:检查长度是否为15,然后验证地区码和出生日期的有效性。 2. **18位身份证验证**:除了检查15位的规则外,还需验证校验码的正确性。 #### C#代码示例 在提供的代码片段中,定义了两个方法`...
综上所述,这个C#编写的邮箱验证工具能够帮助开发者验证邮箱地址的有效性,提高数据质量,并防止潜在的欺诈行为。在实际使用中,需要考虑如何平衡验证效果和用户隐私,同时遵循相关的技术标准和法律法规。
在C#中,串口通信时发送数据前需要计算并附加CRC16校验码,接收数据后则需校验CRC以确认数据完整性和正确性。以下是一段简化的代码示例: ```csharp using System.IO.Ports; // 创建SerialPort对象 SerialPort ...
这个"C# 身份证验证类 DLL 带源码"是一个专门用于验证中国公民身份证合法性的开发工具,它可以帮助开发者快速集成到自己的应用程序中,进行有效的身份验证。以下是关于这个DLL及其源码的详细知识点: 1. **C#编程...
根据提供的信息,我们可以详细解析与C#中国身份证验证相关的知识点,包括省份验证和校验码验证,确保符合GB11643-1999标准。 ### 一、身份证号码结构 中国的身份证号码有两种格式:15位和18位。 #### 15位身份证...
在这个程序中,开发者利用C#的强大功能,包括类、接口、事件处理等,来构建微博验证的逻辑。 3. **Web请求和响应处理**: C#提供了System.Net命名空间,包含了对HTTP请求和响应的处理,比如HttpWebRequest和...
C#常用的数据格式检验类库可以帮助开发者高效地检查输入数据的有效性,避免因为不合法的用户输入或错误的数据而导致的问题。本篇将深入探讨标题和描述中提及的几个关键验证功能:邮件格式验证、数值范围验证、身份证...
C#中的`System.IO.Ports`命名空间提供了SerialPort类,用于设置串口参数(如波特率、校验位、数据位等)并实现发送和接收数据。 2. **协议理解**:三菱CNC通信需要遵循特定的通讯协议,如M-Code或G-Code。这些代码...