社区
Java SE
帖子详情
怎样判断输入的字符串是否是“YYYY-MM-DD”格式的?
wangxuanyi
2003-08-18 03:28:50
请问
...
System.out.println("查询日志起始日期:");
String startDate=in.InputString();
...
怎么判断startDate的格式是“YYYY-MM-DD”
...全文
700
10
打赏
收藏
怎样判断输入的字符串是否是“YYYY-MM-DD”格式的?
请问 ... System.out.println("查询日志起始日期:"); String startDate=in.InputString(); ... 怎么判断startDate的格式是“YYYY-MM-DD”
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhousm6
2003-08-19
打赏
举报
回复
其实你这个判断包含两部分,一是判断字串是否为****-**-**的形式,而是判断字串是否为日期。
SimpleDateFormat的函数只能作第一种判断。如果不用正则表达式的话还是自己写函数吧。
String sDate = "****-**-**";
// 判断形式
try {
if ( (sDate.indexOf("-") == 5) && (sDate.lastIndexOf("-") == 8)) {
// 形式符合要求,判断是否为日期
Calendar calendar = Calendar.getInstance();
Calendar.setLenient( false );
Calendar.set(Integer.parseInt(sDate.substring(0, 4)),
Integer.parseInt(sDate.substring(5, 7)) - 1,// 月份比较特别,要-1才能得到相应的月
Integer.parseInt(sDate.substring(8, 10)));
Date dt = calendar.getTime();
return true;
} else {
// 形式不符合要求
return false;
}
} catch (Exception e) {
// 非日期
return false;
}
cbhyk
2003-08-19
打赏
举报
回复
String s = ...
java.text.SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try
{
if(s.equals(sdf.format(sdf.parse(s)))
//格式正确;
else
//格式不正确;
}
catch(ParseException e)
{
//格式不正确;
}
wangxuanyi
2003-08-19
打赏
举报
回复
还有没有更好的方法呀?
SimpleDateFormat 方法不能保证输入的确实是日期,比如:1999-00-01就不能检测出来
正则表达式不能在JDK1.2上使用,而且SCO UNIX 的JDK好象只有1.2版本的???
怎么验证是合法日期呀??
onefox
2003-08-18
打赏
举报
回复
mark
马行空牛耕田
2003-08-18
打赏
举报
回复
学习……
coordinate
2003-08-18
打赏
举报
回复
//正则表达式
Pattern p=Pattern.compile("[1-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]");
Matcher m=p.matcher(startDate);
if(!m.find()){
//错误
}
geyf
2003-08-18
打赏
举报
回复
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
try{
df.parse(startDate);//抛异常就不是正确格式
}catch(){}
cocotree
2003-08-18
打赏
举报
回复
.substring
knight_qmh
2003-08-18
打赏
举报
回复
java.text.SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
sdf.parse(startDate);
javahui
2003-08-18
打赏
举报
回复
正则表达式,好象是JDK1。4支持吧
正则表达式实现将
MM
/
DD
/
YYYY
格式
的日期转换为
YYYY
-
MM
-
DD
格式
主要介绍了正则表达式实现将
MM
/
DD
/
YYYY
格式
的日期转换为
YYYY
-
MM
-
DD
格式
的方法,是一个比较简单实用的正则替换应用,对于怎能则表达式的学习具有一定的参考借鉴价值,需要的朋友可以参考下
js
字符串
日期
yyyy
-
MM
-
dd
转化为date示例代码
最近遇到一个问题,就是获取表单中的日期往后台通过json方式传的时候,遇到Date.parse(str)函数在ff下报错: NAN 找了些资料,发现是由于Date.parse()函数对日期
格式
有要求:详细参考 Date.parse函数 对于js操作日期: 创建一个日期对象: var objDate=new Date([arguments list]); 参数形式有以下5种: 代码如下: view plainnew Date(“month
dd
,
yyyy
hh:
mm
:ss”); new Date(“month
dd
,
yyyy
”); new Date(
yyyy
,mth,
dd
,hh,
mm
,ss);
Python 47个
字符串
方法
# Python 47个
字符串
方法## 课程介绍同学们是否总是要搜资料、查官网后,才知道怎么操作
字符串
?如果是,来学学本课程吧,本课程以讲解官网文档的方式,讲解 Python 47个
字符串
方法,涉及替换、删除、连接、查找、分割、
格式
化、编码、转换等
字符串
操作,带同学们系统学习 Python
字符串
方法。
Spring Boot 将
yyyy
-
MM
-
dd
格式
的文本
字符串
直接转换为LocalDateTime出现的问题
主要介绍了Spring Boot 将
yyyy
-
MM
-
dd
格式
的文本
字符串
直接转换为LocalDateTime出现的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
时间转换工具类
1、获取系统当前时间: 返回
字符串
格式
yyyy
-
MM
-
dd
HH:
mm
:ss 、
yyyy
MM
dd
HH
mm
ss 返回短时间
字符串
格式
yyyy
-
MM
-
dd
获取时间 小时:分;秒 HH:
mm
:ss 2、将长时间
格式
字符串
转换为时间
yyyy
-
MM
-
dd
HH:
mm
:ss 将长时间
格式
时间转换为
字符串
yyyy
-
MM
-
dd
HH:
mm
:ss 将短时间
格式
时间转换为
字符串
yyyy
-
MM
-
dd
将短时间
格式
字符串
转换为时间
yyyy
-
MM
-
dd
将短时间
格式
字符串
转换为时间
yyyy
-
MM
-
dd
HH:
mm
:ss 3、获取系统当前时间 4提取一个月中的最后一天 。。。。。。。。。。。。
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章