当前位置:首页 » 编程语言 » java正则表达式日期

java正则表达式日期

发布时间: 2024-12-18 16:26:28

1. 用java正则表达式怎么匹配年月日(比如要求输入为出生日期)

建议使用 ^(\d{2}|\d{4})[-/](0?[1-9]|1[12])[-/](0?[1-9]|[12]\d|3[01])$ 来匹配(日期不一定有效),然后尝试转换成日期.如果要严谨点可以用^(\d{2}|\d{4})[-/](((0?[13578]|10|12)[-/](0?[1-9]|[12]\d|3[01]))|((0?[469]|11)[-/](0?[1-9]|[12]\d|30))|(0?2[-/](0?[1-9]|[12]\d)))$但是这里还是有个问题:将所有年份的2月29日都当作有效日期

2. java 正则表达式验证日期格式 yyyy-MM-dd,如何写

我前不久刚好整了这段代码,你仔细看一下:
闰年:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))

平年:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))

上面代码验证的格式是yyyyMMdd,看懂了这个,你那个也就清楚了

3. java验证日期"yyyyMMdd"正则表达式,

正则表达式如下
/^(\d{4})-(\d{2})-(\d{2})$/

4. java中Js验证日期的正则表达式格式为:yyyy/MM/dd

var result=data.match(/((^((1[8-9]\d{2})|([2-9]\d{3}))(\/)(10|12|0?[13578])(\/)(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(\/)(11|0?[469])(\/)(30|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(\/)(0?2)(\/)(2[0-8]|1[0-9]|0?[1-9])$)|(^([2468][048]00)(\/)(0?2)(\/)(29)$)|(^([3579][26]00)(\/)(0?2)(\/)(29)$)|(^([1][89][0][48])(\/)(0?2)(\/)(29)$)|(^([2-9][0-9][0][48])(\/)(0?2)(\/)(29)$)|(^([1][89][2468][048])(\/)(0?2)(\/)(29)$)|(^([2-9][0-9][2468][048])(\/)(0?2)(\/)(29)$)|(^([1][89][13579][26])(\/)(0?2)(\/)(29)$)|(^([2-9][0-9][13579][26])(\/)(0?2)(\/)(29)$))/);
将所有的(-)改成(\/)不就得了
我很久以前好像写过一个和这差不多的正则

5. java 正则表达式验证日期格式 yyyy-MM-dd,如何写

我前不久刚好整了这段代码,你仔细看一下:
闰年:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))
平年:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))
上面代码验证的格式是yyyyMMdd,看懂了这个,你那个也就清楚了

6. Java中验证YYYYMMDDhhmmss的正则表达式 例如20051224120411是否符合 各位大侠多谢了

SImpleDateFormat.parse(String source) Date;
用这个方法就行 在实例化SimpleDateFormat的时候 记得把日期规则穿进去就ok了 日期规则区分大小写
如果parse方法出现异常的话 就证明不符合

7. Java里面效验日期的正则表达式

publicstaticvoidmain(String[]args)
{
StringcheckValue="20000431112230";
Stringyear=checkValue.substring(0,4);//获取年份
Stringmonth=checkValue.substring(4,6);//获取月份
BooleanisLeap=leapYear(Integer.parseInt(year));//判断闰年
System.out.println(isLeap);
StringBuffereL=newStringBuffer();
StringlongMonth="01030507081012";//31天的月份
Stringfix="([2][0-3]|[0-1][0-9]|[1-9])[0-5][0-9]([0-5][0-9]|[6][0])";


if(isLeap&&month.equals("02")){//针对2月份的情况【闰年】
eL.append("\d{4}([1][0-2]|[0][0-9])([2][0-1]|[1-2][0-9]|[0][1-9]|[1-9])"+fix);
}elseif(!isLeap&&month.equals("02")){//针对2月份的情况【非闰年】
eL.append("\d{4}([1][0-2]|[0][0-9])([2][0-1]|[1-2][0-8]|[0][1-9]|[1-9])"+fix);
}elseif(longMonth.contains(month)){//31天月份
eL.append("\d{4}([1][0-2]|[0][0-9])([3][0-1]|[1-2][0-9]|[0][1-9]|[1-9])"+fix);
}else{//30天月份
eL.append("\d{4}([1][0-2]|[0][0-9])([3][0]|[1-2][0-9]|[0][1-9]|[1-9])"+fix);
}
Patternp=Pattern.compile(eL.toString());
Matcherm=p.matcher(checkValue);
booleanflag=m.matches();
if(flag)
{
System.out.println("格式正确");
}
else
{
System.out.println("格式错误");
}

}
publicstaticbooleanleapYear(intyear){
BooleanisLeap=false;
if(((year%100==0)&&(year%400==0))
||((year%100!=0)&&(year%4==0)))
isLeap=true;
returnisLeap;
}

热点内容
我的世界服务器多少钱一个月 发布:2024-12-18 19:05:10 浏览:563
环保宣传片脚本 发布:2024-12-18 18:53:53 浏览:322
linuxtcp代码 发布:2024-12-18 18:48:50 浏览:178
华为手机密码串在哪里 发布:2024-12-18 18:43:09 浏览:937
github怎么建文件夹 发布:2024-12-18 18:32:21 浏览:555
如何安装python3 发布:2024-12-18 18:32:17 浏览:899
怎么样的电脑配置才带的动pr 发布:2024-12-18 18:32:11 浏览:107
油卡怎么改密码 发布:2024-12-18 18:27:11 浏览:138
服务器恶搞我的世界 发布:2024-12-18 18:22:37 浏览:250
cmppphp 发布:2024-12-18 18:21:37 浏览:78