C# 正则表达式大全

#region 正则表达式字符串

/// <summary>

/// 正则表达式字符串

/// </summary>

public class StrRegex

{

#region 正则表达式替换字符串

/// <summary>

/// 正则表达式替换字符串

/// </summary>

/// <param name="inputString">字符串内容</param>

/// <param name="pattern">替换字符</param>

/// <param name="replaceStr">替换值</param>

/// <returns></returns>

public static string RegexReplace(string inputString, string pattern, string replaceStr)

{

try

{

return Regex.Replace(inputString, pattern, replaceStr);

}

catch (Exception e)

{

return e.Message;

}

}

#endregion

#region 判断字符串是否为正整数

/// <summary>

/// 判断字符串是否为正整数

/// </summary>

/// <param name="objString">要匹配的字符串</param>

/// <returns>返回真假值,true:匹配;false:不匹配</returns>

public static bool IsInt(String objString)

{

Regex myReg = new Regex(@"^\d+$");

return myReg.IsMatch(objString);

}

#endregion

#region 判断输入的字符串是否全是英文(不区分大小写)

/// <summary>

/// 判断输入的字符串是否全是英文(不区分大小写)

/// </summary>

/// <param name="objString">所要匹配的字符串</param>

/// <returns>返回真假值,true:匹配;false:不匹配</returns>

public static bool isEnglishString(String objString)

{

Regex myReg = new Regex(@"^[a-zA-Z]+$");

return myReg.IsMatch(objString);

}

#endregion

/// <summary>

/// 返回字符串中的数字

/// </summary>

/// <param name="objString"></param>

/// <returns></returns>

public static string RunNumber(string objString)

{

return Regex.Match(objString, "[0-9]+").Value.ToString();

}

/// <summary>

/// 返回字符串中左边的字符

/// </summary>

/// <param name="objString"></param>

/// <returns></returns>

public static string RunLeftString(string objString)

{

return Regex.Match(objString, "[%*/+ -.A-Za-z]+").Value.ToString();

}

/// <summary>

/// 返回字符串中右边的字符

/// </summary>

/// <param name="objString"></param>

/// <returns></returns>

public static string RunRightString(string objString)

{

return Regex.Match(objString, "[%*/+ -.A-Za-z]+$").Value.ToString();

}

/// <summary>

/// 返回字符串中的字符

/// </summary>

/// <param name="objString"></param>

/// <returns></returns>

public static string RunString(string objString)

{

return Regex.Match(objString, "[A-Za-z]+").Value.ToString();

}

#region 判断所输入的字符串是否为中文

/// <summary>

/// 判断所输入的字符串是否为中文

/// </summary>

/// <param name="objString">所要匹配的字符串</param>

/// <returns>返回真假值,true:匹配;false:不匹配</returns>

public static bool isChinese(String objString)

{

Regex myReg = new Regex(@"^[\u4e00-\u9fa5]+$");

return myReg.IsMatch(objString);

}

#endregion

#region 判断输入字符串是否为英文及数字(英文不区分大小写)

/// <summary>

/// 判断输入字符串是否为英文及数字(英文不区分大小写)

/// </summary>

/// <param name="objString">所要匹配的字符串</param>

/// <returns>返回真假值,true:匹配;false:不匹配</returns>

public static bool isEngNum(String objString)

{

Regex myReg = new Regex(@"^[*/+-a-zA-Z0-9]+$");

return myReg.IsMatch(objString);

}

#endregion

#region 判断输入字符串是否为英文A-D及数字(英文限制在A-D之间英文不区分大小写)

/// <summary>

/// 判断输入字符串是否为英文A-D及数字(英文限制在A-D之间英文不区分大小写)

/// </summary>

/// <param name="objString">所要匹配的字符串</param>

/// <returns>返回真假值,true:匹配;false:不匹配</returns>

public static bool isEngNumMax(String objString)

{

Regex myReg = new Regex(@"^[a-dA-D0-9]+$");

return myReg.IsMatch(objString);

}

#endregion

#region 判断是否为英文及数字组合

/// <summary>

/// 判断是否为英文及数字组合

/// </summary>

/// <param name="objString"></param>

/// <returns></returns>

public static bool InEngNum(string objString)

{

//Regex myReg = new Regex(@"^(?![0-9]+)\[a-zA-Z0-9\]{1,25}");

//return myReg.IsMatch(objString);"^[a-zA-Z]\w{5,17}$"

return Regex.IsMatch(objString, @"^[*/+-a-zA-Z0-9]{1,20}$");

}

#endregion

#region 判断输入字符串是否为英文,数字,中文(英文不区分大小写)

/// <summary>

/// 判断输入字符串是否为英文,数字,中文(英文不区分大小写)

/// </summary>

/// <param name="objString">所要匹配的字符串</param>

/// <returns>返回真假值,true:匹配;false:不匹配</returns>

public static bool isChineseEngNum(String objString)

{

Regex myReg = new Regex(@"^[\u4e00-\u9fa5a-zA-Z0-9]+$");

return myReg.IsMatch(objString);

}

#endregion

#region 判断输入字符串是否为小数

/// <summary>

/// 判断输入字符串是否为小数

/// </summary>

/// <param name="objString">所要匹配的字符串</param>

/// <returns>返回真假值,true:匹配;false:不匹配</returns>

public static bool isFloat(String objString)

{

Regex myReg = new Regex(@"^[0-9]+[.][0-9]+|[0-9]+$");

return myReg.IsMatch(objString);

}

#endregion

#region 判断日期格式是否有效

/// <summary>

/// 判断日期格式是否有效

/// </summary>

/// <param name="objString"></param>

/// <returns></returns>

public static bool IsDate(String objString)

{

Regex myReg = new Regex(@"\b(?<year>\d{2,4})-(?<month>\d{1,2})-(?<day>\d{1,2})\b");

return myReg.IsMatch(objString);

}

#endregion

#region 判断字符串是否符合此正则表达试

/// <summary>

/// 判断字符串是否符合此正则表达试

/// </summary>

/// <param name="str">所要匹配的字符串</param>

/// <param name="regString">正则字符串(如:^[1-9]{1}$)</param>

/// <returns>返回真假值,true:匹配;false:不匹配</returns>

public static bool IsFitStrings(String str, String regString)

{

Regex objPattern = new Regex(regString);

bool returnValue = objPattern.IsMatch(str);

return returnValue;

}

#endregion

#region 判断字符串是否为手机号或小灵通号

/// <summary>

/// 判断字符串是否为手机号或小灵通号

/// </summary>

/// <param name="telNumber">所要匹配的字符串</param>

/// <returns>返回真假值,true:匹配;false:不匹配</returns>

public static bool IsMobile(string telNumber)

{

if (telNumber == "")

return false;

Regex myReg = new Regex(@"^((\d{11,12})|(\d{7}))$");

return myReg.IsMatch(telNumber);

}

#endregion

#region 判断字符串是否为Email地址

/// <summary>

/// 判断字符串是否为Email地址

/// </summary>

/// <param name="email">所要匹配的字符串</param>

/// <returns>返回真假值,true:匹配;false:不匹配</returns>

public static bool IsEmail(string email)

{

if (email == "")

{

return false;

}

Regex myReg = new Regex(@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$");

return myReg.IsMatch(email);

}

#endregion

#region 判断字符串是否为座机(如xxx-xxxxxxx-xxx)

/// <summary>

/// 判断字符串是否为座机(如xxx-xxxxxxx-xxx)

/// </summary>

/// <param name="tel">所要匹配的字符串</param>

/// <returns>返回真假值,true:匹配;false:不匹配</returns>

public static bool IsTel(string tel)

{

if (tel == "")

return false;

Regex myReg = new Regex(@"^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}(-\d{1,5})?$");

return myReg.IsMatch(tel);

}

#endregion

#region 判断是否为邮政编码

/// <summary>

/// 判断是否为邮政编码

/// </summary>

/// <param name="Zip"></param>

/// <returns></returns>

public static bool IsValidZip(string Zip)

{

return Regex.IsMatch(Zip, @"^[a-z0-9 ]{3,12}$");

}

#endregion

#region 判断是否为有效身份证号

/// <summary>

/// 判断是否为有效身份证号

/// </summary>

/// <param name="IdCard"></param>

/// <returns></returns>

public static bool IsIdCard(string IdCard)

{

return Regex.IsMatch(IdCard, @"^\d{15}|\d{18}$");

}

#endregion

#region 返回分割字符串

/// <summary>

/// 返回分割字符串

/// </summary>

/// <param name="Str">要分割的字符串集</param>

/// <param name="spliststr">指定分割字符</param>

/// <returns></returns>

public static string FindStr(string Str, string spliststr)

{

string[] str2 = System.Text.RegularExpressions.Regex.Split(Str, @"[" + spliststr + "]+");

foreach (string i in str2)

{

return i.ToString();

}

return "";

}

#endregion

}

#endregion

相关推荐
向宇it2 小时前
【从零开始入门unity游戏开发之——C#篇25】C#面向对象动态多态——virtual、override 和 base 关键字、抽象类和抽象方法
java·开发语言·unity·c#·游戏引擎
向宇it3 小时前
【从零开始入门unity游戏开发之——C#篇24】C#面向对象继承——万物之父(object)、装箱和拆箱、sealed 密封类
java·开发语言·unity·c#·游戏引擎
坐井观老天8 小时前
在C#中使用资源保存图像和文本和其他数据并在运行时加载
开发语言·c#
西洼工作室8 小时前
【java 正则表达式 笔记】
java·笔记·正则表达式
pchmi10 小时前
C# OpenCV机器视觉:模板匹配
opencv·c#·机器视觉
黄油饼卷咖喱鸡就味增汤拌孜然羊肉炒饭12 小时前
C#都可以找哪些工作?
开发语言·c#
boligongzhu14 小时前
Dalsa线阵CCD相机使用开发手册
c#
向宇it1 天前
【从零开始入门unity游戏开发之——C#篇23】C#面向对象继承——`as`类型转化和`is`类型检查、向上转型和向下转型、里氏替换原则(LSP)
java·开发语言·unity·c#·游戏引擎·里氏替换原则
kiss strong1 天前
正则表达式
正则表达式