[C#] Helper 封装系列 -- RegularExpressionHelper

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;

namespace ConsoleApplication6
{
    public sealed class RegularExpressionHelper
    {
        /// <summary>
        /// 是否合法的手机号
        /// </summary>
        /// <param name="input">要搜索匹配项的字符串</param>
        /// <returns>如果正则表达式找到匹配项,则为 true;否则,为 false</returns>
        public static bool IsPhone(string input)
        {
            return Regex.IsMatch(input, @"^[ 1][ 358] \d{9}$");
        }

        /// <summary>
        /// 是否合法的身份证号码
        /// </summary>
        /// <param name="input">要搜索匹配项的字符串</param>
        /// <returns>如果正则表达式找到匹配项,则为 true;否则,为 false</returns>
        public static bool IsIdCard(string input)
        {
            return Regex.IsMatch(input, @"^( ^\d{15}$|^\d{18}$|^\d{17}(\d| X| x)) $" , RegexOptions.IgnoreCase);
        }

        /// <summary>
        /// 是否合法的邮政编码
        /// </summary>
        /// <param name="input">要搜索匹配项的字符串</param>
        /// <returns>如果正则表达式找到匹配项,则为 true;否则,为 false</returns>
        public static bool IsPostCard(string input)
        {
            return Regex.IsMatch(input, @"^[ 1- 9] \d{5}$");
        }

        /// <summary>
        /// 是否合法的邮箱
        /// </summary>
        /// <param name="input">要搜索匹配项的字符串</param>
        /// <returns>如果正则表达式找到匹配项,则为 true;否则,为 false</returns>
        public static bool IsEMail(string input)
        {
            return Regex.IsMatch(input, @"^\w+( [-+ .] \w+) *@ \w+( [- .] \w+) *\. \w+( [- .] \w+) *$" );
        }
    }
}
时间: 2024-09-29 23:33:13

[C#] Helper 封装系列 -- RegularExpressionHelper的相关文章

CoreData封装系列一----NSManagedObjectContext多线程

CoreData原理就是,把实体类模型文件读入内存,然后根据模型文件创建对应的数据库表.让实体类与数据库表映射,类型java里面的hibernate orm框架. 我们讨论下NSManagedObjectContext. 创建NSManagedObjectContext时,可以指定三种模式: //或者不加参数,默认就是这个 NSConfinementConcurrencyType //绑定到一个后台线程 NSPrivateQueueConcurrencyType //绑定到一个主线程 NSMai

[C#] 简单的 Helper 封装 -- RandomHelper

1 using System; 2 3 namespace Wen.Helpers 4 { 5 /// <summary> 6 /// 随机数助手 7 /// </summary> 8 public sealed class RandomHelper 9 { 10 /// <summary> 11 /// 字符集合(去掉 0oO 这几个容易混淆的字符) 12 /// </summary> 13 private const string CharSet = &

[C#] 简单的 Helper 封装 -- SecurityHelper 安全助手:封装加密算法(MD5、SHA、HMAC、DES、RSA)

1 using System; 2 using System.IO; 3 using System.Security.Cryptography; 4 using System.Text; 5 6 namespace Wen.Helpers 7 { 8 /// <summary> 9 /// 安全助手 10 /// </summary> 11 public sealed class SecurityHelper 12 { 13 private static readonly byte

前端工具类封装系列

序号 内容 是否明白 备注 数组 1. 数组去重(1) 是 time:2019/04/09 2. 数组去重(2) 是 time:2019/04/09 3. 数组去重(3)es6 是 time:2019/04/10 4. 判断两个数组是否相等 是 time:2019/04/09 数组 1.数组去重(1) /** * 数组去重 * @param {Array}arr is * @returns {*} is */ function arrayClear(arr) { const arr2 = [];

Net设计模式实例系列文章总结

1 什么是设计模式 设计模式是对在软件设计过程中重复出现的问题提出了一种比较好的解决方案.正如一位专家所说:设计模式是对程序设计人员经常遇到的设计问题的可再现的解决方案(The Smalltalk Companion).GOF设计模式通常被认为是其他设计模式的基础,随着业务复杂度的增大,会不断涌现新的设计模式,而这些新的设计模式一般会以GOF模式理论为参照. 2 为什么要学习设计模式 从个人职业规划来考虑.一位软件开发工程师随着编码量的增加,开发经验的增加,软件理论理解的加深,会不由自主地想一些

FirstPersonManipulator ---------osg与qt 第一人称相机封装

osg与qt配置环境的讲解: http://blog.csdn.net/sadasasdasd/article/details/44573637 osg与qt百度贴吧: http://tieba.baidu.com/f?ie=utf-8&kw=osg%E4%B8%8Eqt&fr=search 配置环境第一讲试看地址:链接:http://pan.baidu.com/s/1gdjEOkb 密码:l3bt 认识并简单的应用qt试看地址:   链接:http://pan.baidu.com/s/1

php中的设计模式之--中介模式

<?php /* 中介者模式是一种行为型模式,它包装了一系列对象相互作用的方式, 使得这些对象不必相互明显作用,从而使它们可以松散偶合.当某些对象之间的作用发生改变时, 不会立即影响其他的一些对象之间的作用,保证这些作用可以彼此独立的变化. 定义一个中介对象来封装系列对象之间的交互.中介者使各个对象不需要显示地相互引用,从而使其耦合性松散,而且可以独立地改变他们之间的交互. 主要角色 ? 中介者(Mediator)角色:定义了对象间相互作用的接口(房产中介) ? 具体中介者(ConcreteMe

设计模式的分类 以及基本原则

设计模式的分类 Gang of Four的"Design Patterns: Elements of Resualbel Software"书将设计模式归纳为三大类型,共23种. 创建型模式 :  通常和对象的创建有关,涉及到对象实例化的方式.(共5种模式) 结构型模式: 描述的是如何组合类和对象以获得更大的结构.(共7种模式) 行为型模式: 用来对类或对象怎样交互和怎样分配职责进行描述.(共11种模式) 创建型模式用来处理对象的创建过程,主要包含以下5种设计模式:  1,工厂方法模式

【设计模式】设计模式的应用场合

接口型模式 把一个类的接口与一个客户的期望接口进行适配 适配器模式(Adapter) 为类的集合提供一个简单的接口 外观模式(Facade) 定义一个接口,使之可以应用于单个对象,也可以应用于对象组 合成模式(Composite) 将一个抽象于其实现进行分离,使之可以相互独立变化 桥接模式(Bridge) 职责型模式   将职责集中到某个类的一个单独实例 单件模式(Singleton) 当一个对象发生改变,依赖于这个对象的其他对象都能够得到通知,而这个发生改变的对象无须了解自己被其他哪些对象使用