几个C#常用正则表达式的总结
程序员文章站
2022-10-14 23:03:46
using system; using system.text.regularexpressions; namespace&nb...
using system;
using system.text.regularexpressions;
namespace commontools
{
/**//// <summary>
/// regexlib 的摘要说明。
/// </summary>
public class regexlib
{
//验证email地址
public static bool isvalidemail(string strin)
{
// return true if strin is in valid e-mail format.
return regex.ismatch(strin, @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-za-z]{2,4}|[0-9]{1,3})(\]?)$");
}
//dd-mm-yy 的日期形式代替 mm/dd/yy 的日期形式。
public static string mdytodmy(string input)
{
return regex.replace(input,"\\b(?\\d{1,2})/(?\\d{1,2})/(?\\d{2,4})\\b","${day}-${month}-${year}");
}
//验证是否为小数
public static bool isvaliddecimal(string strin)
{
return regex.ismatch(strin,@"[0].\d{1,2}|[1]");
}
//验证是否为电话号码
public static bool isvalidtel(string strin)
{
return regex.ismatch(strin,@"(\d+-)?(\d{4}-?\d{7}|\d{3}-?\d{8}|^\d{7,8})(-\d+)?");
}
//验证年月日
public static bool isvaliddate(string strin)
{
return regex.ismatch(strin,@"^2\d{3}-(?:0?[1-9]|1[0-2])-(?:0?[1-9]|[1-2]\d|3[0-1])(?:0?[1-9]|1\d|2[0-3]):(?:0?[1-9]|[1-5]\d):(?:0?[1-9]|[1-5]\d)$");
}
//验证后缀名
public static bool isvalidpostfix(string strin)
{
return regex.ismatch(strin,@"\.(?i:gif|jpg)$");
}
//验证字符是否再4至12之间
public static bool isvalidbyte(string strin)
{
return regex.ismatch(strin,@"^[a-z]{4,12}$");
}
//验证ip
public static bool isvalidip(string strin)
{
return regex.ismatch(strin,@"^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$");
}
}
}
using system.text.regularexpressions;
namespace commontools
{
/**//// <summary>
/// regexlib 的摘要说明。
/// </summary>
public class regexlib
{
//验证email地址
public static bool isvalidemail(string strin)
{
// return true if strin is in valid e-mail format.
return regex.ismatch(strin, @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-za-z]{2,4}|[0-9]{1,3})(\]?)$");
}
//dd-mm-yy 的日期形式代替 mm/dd/yy 的日期形式。
public static string mdytodmy(string input)
{
return regex.replace(input,"\\b(?\\d{1,2})/(?\\d{1,2})/(?\\d{2,4})\\b","${day}-${month}-${year}");
}
//验证是否为小数
public static bool isvaliddecimal(string strin)
{
return regex.ismatch(strin,@"[0].\d{1,2}|[1]");
}
//验证是否为电话号码
public static bool isvalidtel(string strin)
{
return regex.ismatch(strin,@"(\d+-)?(\d{4}-?\d{7}|\d{3}-?\d{8}|^\d{7,8})(-\d+)?");
}
//验证年月日
public static bool isvaliddate(string strin)
{
return regex.ismatch(strin,@"^2\d{3}-(?:0?[1-9]|1[0-2])-(?:0?[1-9]|[1-2]\d|3[0-1])(?:0?[1-9]|1\d|2[0-3]):(?:0?[1-9]|[1-5]\d):(?:0?[1-9]|[1-5]\d)$");
}
//验证后缀名
public static bool isvalidpostfix(string strin)
{
return regex.ismatch(strin,@"\.(?i:gif|jpg)$");
}
//验证字符是否再4至12之间
public static bool isvalidbyte(string strin)
{
return regex.ismatch(strin,@"^[a-z]{4,12}$");
}
//验证ip
public static bool isvalidip(string strin)
{
return regex.ismatch(strin,@"^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$");
}
}
}
上一篇: python检测是文件还是目录的方法