您的位置:首页 > 其它

常用正则表达式验证

2015-05-08 15:47 169 查看
/// <summary>

/// 验证码码输入条件

/// </summary>

/// <param name="str_password">密码字符串</param>

/// <returns>返回布尔值</returns>

public bool IsPassword(string str_password)

{

return System.Text.RegularExpressions.//使用正则表达式判断是否匹配

Regex.IsMatch(str_password, @"[A-Za-z]+[0-9]");

}

/// <summary>

/// 验证邮编格式是否正确

/// </summary>

/// <param name="str_postalcode">邮编字符串</param>

/// <returns>返回布尔值</returns>

public bool IsPostalcode(string str_postalcode)

{

return System.Text.RegularExpressions.//使用正则表达式判断是否匹配

Regex.IsMatch(str_postalcode, @"^\d{6}$");

}

/// <summary>

/// 验证手机号是否正确

/// </summary>

/// <param name="str_handset">手机号码字符串</param>

/// <returns>返回布尔值</returns>

public bool IsHandset(string str_handset)

{

return System.Text.RegularExpressions.Regex.////使用正则表达式判断是否匹配

IsMatch(str_handset, @"^[1]+[3,5]+\d{9}$");

}

/// <summary> /// 验证身份证号是否正确 /// </summary> /// <param name="str_idcard">身份证号字符串</param> /// <returns>返回布尔值</returns> public bool IsIDcard(string str_idcard) { return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配 IsMatch(str_idcard, @"(^\d{18}$)|(^\d{15}$)"); }

/// <summary>

/// 验证小数是否正确

/// </summary>

/// <param name="str_decimal">小数字符串</param>

/// <returns>返回布尔值</returns>

public bool IsDecimal(string str_decimal)

{

return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配

IsMatch(str_decimal, @"^[0-9]+(.[0-9]{2})?$");

}

System.Text.RegularExpressions.MatchCollection matches =//使用正则表达式查找重复出现单词的集合 System.Text.RegularExpressions.Regex.Matches(label1.Text, @"\b(?<word>\w+)\s+(\k<word>)\b", System.Text. RegularExpressions.RegexOptions.Compiled | System.Text. RegularExpressions.RegexOptions.IgnoreCase); if (matches.Count != 0)//如果集合中有内容 { foreach (System.Text.RegularExpressions.Match//遍历集合 match in matches) { string word = match.Groups["word"].Value;//获取重复出现的单词 MessageBox.Show(word.ToString(), "英文单词");//弹出消息对话框 } } else { MessageBox.Show("没有重复的单词"); }//弹出消息对话框

/// <summary>

/// 验证输入是否为数字

/// </summary>

/// <param name="str_number">用户输入的字符串</param>

/// <returns>方法返回布尔值</returns>

public bool IsNumber(string str_number)

{

return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配

IsMatch(str_number, @"^[0-9]*$");

}

/// <summary>

/// 验证网址格式是否正确

/// </summary>

/// <param name="str_url">网址字符串</param>

/// <returns>方法返回布尔值</returns>

public bool IsUrl(string str_url)

{

return System.Text.RegularExpressions.Regex.IsMatch(str_url,//使用正则表达式判断是否匹配

@"http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?");

}

/// <summary>

/// 验证输入字符是否为小写字母

/// </summary>

/// <param name="str_UpChar">用户输入的字符串</param>

/// <returns>方法返回布尔值</returns>

public bool IsLowerChar(string str_UpChar)

{

return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配

IsMatch(str_UpChar, @"^[a-z]+$");

}

/// <summary>

/// 验证电话号码格式是否正确

/// </summary>

/// <param name="str_telephone">电话号码信息</param>

/// <returns>方法返回布尔值</returns>

public bool IsTelephone(string str_telephone)

{

return System.Text.RegularExpressions.//使用正则表达式判断是否匹配

Regex.IsMatch(str_telephone, @"^(\d{3,4}-)?\d{6,8}$");

}

/// <summary>

/// 验证月份是否正确

/// </summary>

/// <param name="str_Month">月份信息字符串</param>

/// <returns>返回布尔值</returns>

public bool IsMonth(string str_Month)

{

return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配

IsMatch(str_Month, @"^(0?[[1-9]|1[0-2])$");

}

/// <summary>

/// 验证密码长度是否正确

/// </summary>

/// <param name="str_Length">密码字符串</param>

/// <returns>方法返回布尔值</returns>

public bool IsPasswLength(string str_Length)

{

return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配

IsMatch(str_Length, @"^\d{6,18}$");

}

/// <summary>

/// 验证IP是否正确

/// </summary>

/// <param name="IP">IP地址字符串</param>

/// <returns>方法返回布尔值</returns>

public bool IPCheck(string IP)

{

string num = "(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)";//创建正则表达式字符串

return Regex.IsMatch(IP,//使用正则表达式判断是否匹配

("^" + num + "\\." + num + "\\." + num + "\\." + num + "$"));

}

/// <summary>

/// 验证输入是否为非零负整数

/// </summary>

/// <param name="str_intNumber">用户输入的数值</param>

/// <returns>方法返回布尔值</returns>

public bool IsIntNumber(string str_intNumber)

{

return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配

IsMatch(str_intNumber, @"^\-[1-9][0-9]*$");

}

/// <summary>

/// 验证输入是否为非零正整数

/// </summary>

/// <param name="str_intNumber">用户输入的数值</param>

/// <returns>方法返回布尔值</returns>

public bool IsIntNumber(string str_intNumber)

{

return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配

IsMatch(str_intNumber, @"^\+?[1-9][0-9]*$");

}

/// <summary>

/// 验证Email格式是否正确

/// </summary>

/// <param name="str_Email">Email地址字符串</param>

/// <returns>方法返回布尔值</returns>

public bool IsEmail(string str_Email)

{

return System.Text.RegularExpressions.Regex.IsMatch(str_Email,//使用正则表达式判断是否匹配

@"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$");

}

/// <summary>

/// 验证小数是否正确

/// </summary>

/// <param name="str_decimal">小数字符串</param>

/// <returns>返回布尔值</returns>

public bool IsDecimal(string str_decimal)

{

return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配

IsMatch(str_decimal, @"^[0-9]+(.[0-9]{2})?$");

}

/// <summary>

/// 验证每月的31天

/// </summary>

/// <param name="str_day">每月的天数</param>

/// <returns>返回布尔值</returns>

public bool IsDay(string str_day)

{

return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配

IsMatch(str_day, @"^((0?[1-9])|((1|2)[0-9])|30|31)$");

}

/// <summary>

/// 验证邮编格式是否正确

/// </summary>

/// <param name="str_postalcode">邮编字符串</param>

/// <returns>返回布尔值</returns>

public bool IsPostalcode(string str_postalcode)

{

return System.Text.RegularExpressions.//使用正则表达式判断是否匹配

Regex.IsMatch(str_postalcode, @"^\d{6}$");

}

/// <summary>

/// 验证输入字符是否为大写字母

/// </summary>

/// <param name="str_UpChar">用户输入的字符串</param>

/// <returns>方法返回布尔值</returns>

public bool IsUpChar(string str_UpChar)

{

return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配

IsMatch(str_UpChar, @"^[A-Z]+$");

}

string strResult = System.Text.RegularExpressions.Regex.//使用正则表达式替换字符串

Replace(textBox1.Text, @"[A-Za-z]\*?", textBox2.Text);

MessageBox.Show("替换前字符:" + "\n" + textBox1.Text +//弹出消息对话框

"\n" + "替换的字符:" + "\n" + textBox2.Text + "\n" +

"替换后的字符:" + "\n" + strResult,"替换");

/// <summary>

/// 验证手机号是否正确

/// </summary>

/// <param name="str_handset">手机号码字符串</param>

/// <returns>返回布尔值</returns>

public bool IsHandset(string str_handset)

{

return System.Text.RegularExpressions.Regex.////使用正则表达式判断是否匹配

IsMatch(str_handset, @"^[1]+[3,5]+\d{9}$");

}

/// <summary>

/// 验证输入字符串中的字符数量是否大于7个

/// </summary>

/// <param name="str_Length">字符串</param>

/// <returns>方法返回布尔值</returns>

public bool IsLength(string str_Length)

{

return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配

IsMatch(str_Length, @"^.{8,}$");

}

/// <summary>

/// 验证字符串是否为大小写字母组成

/// </summary>

/// <param name="str_Letter">字符串</param>

/// <returns>方法返回布尔值</returns>

public bool IsLetter(string str_Letter)

{

return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配

IsMatch(str_Letter, @"^[A-Za-z]+$");

}

/// <summary>

/// 验证字符串是否为汉字

/// </summary>

/// <param name="str_chinese">字符串</param>

/// <returns>方法返回布尔值</returns>

public bool IsChinese(string str_chinese)

{

return System.Text.RegularExpressions.Regex.//使用正则表达式判断是否匹配

IsMatch(str_chinese, @"^[\u4e00-\u9fa5],{0,}$");

}



int P_scalar = 0;//定义值类型变量并赋值为0

Regex P_regex = //创建正则表达式对象,用于判断字符是否为汉字

new Regex("^[\u4E00-\u9FA5]{0,}$");

for (int i = 0; i < txt_str.Text.Length; i++)//遍历字符串中每一个字符

{

P_scalar = //如果检查的字符是汉字则计数器加1

P_regex.IsMatch(txt_str.Text[i].

ToString()) ? ++P_scalar : P_scalar;

}

txt_count.Text = P_scalar.ToString();//显示汉字数量

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: