java 正则表达式效验_java 正则表达式验证

packagecom.fsti.icop.util.regexp;importjava.util.regex.Matcher;importjava.util.regex.Pattern;public final classRegExpValidatorUtils {/*** 验证邮箱

*

*@param待验证的字符串

*@return如果是符合的字符串,返回 true ,否则为 false */

public static booleanisEmail(String str) {

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

}/*** 验证IP地址

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanisIP(String str) {

String num= "(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)";

String regex= "^" + num + "\\." + num + "\\." + num + "\\." + num + "$";returnmatch(regex, str);

}/*** 验证网址Url

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsUrl(String str) {

String regex= "http(s)?://([\\w-]+\\.)+[\\w-]+(/[\\w- ./?%&=]*)?";returnmatch(regex, str);

}/*** 验证电话号码

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsTelephone(String str) {

String regex= "^(\\d{3,4}-)?\\d{6,8}$";returnmatch(regex, str);

}/*** 验证输入密码条件(字符与数据同时出现)

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsPassword(String str) {

String regex= "[A-Za-z]+[0-9]";returnmatch(regex, str);

}/*** 验证输入密码长度 (6-18位)

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsPasswLength(String str) {

String regex= "^\\d{6,18}$";returnmatch(regex, str);

}/*** 验证输入邮政编号

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsPostalcode(String str) {

String regex= "^\\d{6}$";returnmatch(regex, str);

}/*** 验证输入手机号码

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsHandset(String str) {

String regex= "^[1]+[3,5]+\\d{9}$";returnmatch(regex, str);

}/*** 验证输入身份证号

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsIDcard(String str) {

String regex= "(^\\d{18}$)|(^\\d{15}$)";returnmatch(regex, str);

}/*** 验证输入两位小数

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsDecimal(String str) {

String regex= "^[0-9]+(.[0-9]{2})?$";returnmatch(regex, str);

}/*** 验证输入一年的12个月

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsMonth(String str) {

String regex= "^(0?[[1-9]|1[0-2])$";returnmatch(regex, str);

}/*** 验证输入一个月的31天

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsDay(String str) {

String regex= "^((0?[1-9])|((1|2)[0-9])|30|31)$";returnmatch(regex, str);

}/*** 验证日期时间

*

*@param待验证的字符串

*@return如果是符合网址格式的字符串,返回 true ,否则为 false */

public static booleanisDate(String str) {//严格验证时间格式的(匹配[2002-01-31], [1997-04-30],//[2004-01-01])不匹配([2002-01-32], [2003-02-29], [04-01-01])//String regex =//"^((((19|20)(([02468][048])|([13579][26]))-02-29))|((20[0-9][0-9])|(19[0-9][0-9]))-((((0[1-9])|(1[0-2]))-((0[1-9])|(1\\d)|(2[0-8])))|((((0[13578])|(1[02]))-31)|(((01,3-9])|(1[0-2]))-(29|30)))))$";//没加时间验证的YYYY-MM-DD//String regex =//"^((((1[6-9]|[2-9]\\d)\\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\\d|3[01]))|(((1[6-9]|[2-9]\\d)\\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\\d|30))|(((1[6-9]|[2-9]\\d)\\d{2})-0?2-(0?[1-9]|1\\d|2[0-8]))|(((1[6-9]|[2-9]\\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$";//加了时间验证的YYYY-MM-DD 00:00:00

String regex = "^((((1[6-9]|[2-9]\\d)\\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\\d|3[01]))|(((1[6-9]|[2-9]\\d)\\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\\d|30))|(((1[6-9]|[2-9]\\d)\\d{2})-0?2-(0?[1-9]|1\\d|2[0-8]))|(((1[6-9]|[2-9]\\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-)) (20|21|22|23|[0-1]?\\d):[0-5]?\\d:[0-5]?\\d$";returnmatch(regex, str);

}/*** 验证数字输入

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsNumber(String str) {

String regex= "^[0-9]*$";returnmatch(regex, str);

}/*** 验证非零的正整数

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsIntNumber(String str) {

String regex= "^\\+?[1-9][0-9]*$";returnmatch(regex, str);

}/*** 验证大写字母

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsUpChar(String str) {

String regex= "^[A-Z]+$";returnmatch(regex, str);

}/*** 验证小写字母

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsLowChar(String str) {

String regex= "^[a-z]+$";returnmatch(regex, str);

}/*** 验证验证输入字母

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsLetter(String str) {

String regex= "^[A-Za-z]+$";returnmatch(regex, str);

}/*** 验证验证输入汉字

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsChinese(String str) {

String regex= "^[\u4e00-\u9fa5],{0,}$";returnmatch(regex, str);

}/*** 验证验证输入字符串

*

*@param待验证的字符串

*@return如果是符合格式的字符串,返回 true ,否则为 false */

public static booleanIsLength(String str) {

String regex= "^.{8,}$";returnmatch(regex, str);

}/***@paramregex

* 正则表达式字符串

*@paramstr

* 要匹配的字符串

*@return如果str 符合 regex的正则表达式格式,返回true, 否则返回 false;*/

private static booleanmatch(String regex, String str) {

Pattern pattern=Pattern.compile(regex);

Matcher matcher=pattern.matcher(str);returnmatcher.matches();

}//3. 检查字符串重复出现的词//

//private void btnWord_Click(object sender, EventArgs e)//{//System.Text.RegularExpressions.MatchCollection matches =//System.Text.RegularExpressions.Regex.Matches(label1.Text,//

//@"\b(?\w+)\s+(\k)\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("没有重复的单词"); }//

//

//}//

//4. 替换字符串//

//private void button1_Click(object sender, EventArgs e)//{//

//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,"替换");//

//}//

//5. 拆分字符串//

//private void button1_Click(object sender, EventArgs e)//{// //实例: 甲025-8343243乙0755-2228382丙029-32983298389289328932893289丁//foreach (string s in//System.Text.RegularExpressions.Regex.Split(textBox1.Text,@"\d{3,4}-\d*"))//{//textBox2.Text+=s;//依次输出 "甲乙丙丁"//}//

//}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值