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

相关推荐
oulaqiao2 小时前
语言集成查询LINQ
c#·linq
xcLeigh3 小时前
WPF实战案例 | C# WPF实现大学选课系统
开发语言·c#·wpf
one9963 小时前
.net 项目引用与 .NET Framework 项目引用之间的区别和相同
c#·.net·wpf
xcLeigh3 小时前
WPF基础 | WPF 布局系统深度剖析:从 Grid 到 StackPanel
c#·wpf
军训猫猫头13 小时前
52.this.DataContext = new UserViewModel(); C#例子 WPF例子
开发语言·c#·wpf
AI+程序员在路上17 小时前
C#调用c++dll的两种方法(静态方法和动态方法)
c++·microsoft·c#
数据的世界0118 小时前
C#中的语句
服务器·c#
装疯迷窍_A19 小时前
ARCGIS国土超级工具集1.3更新说明
arcgis·c#·插件·变更调查·尖锐角·狭长
蹦蹦跳跳真可爱58919 小时前
Python----Python高级(正则表达式:语法规则,re库)
python·正则表达式