1. java怎麼判斷輸入的字元串是否為時間格式
通過正則表達式判斷。代碼如下:
public boolean isDate(String date) {
String path="\\d{4}-\\d{2}-\\d{2}";//定義匹配規則
Pattern p=Pattern.compile(path);//實例化Pattern
Matcher m=p.matcher(date);//驗證字元串內容是否合法
if(m.matches()){
return true;
}
return false;
}
2. JAVA 判斷一個字元串是不是一個合法的日期格式
(Stringstr){
booleanconvertSuccess=true;
//指定日期格式為四位年/兩位月份/兩位日期,注意yyyy/MM/dd區分大小寫;
SimpleDateFormatformat=newSimpleDateFormat("yyyy/MM/ddHH:mm");
try{
//設置lenient為false.否則SimpleDateFormat會比較寬松地驗證日期,比如2007/02/29會被接受,並轉換成2007/03/01
format.setLenient(false);
format.parse(str);
}catch(ParseExceptione){
//e.printStackTrace();
//如果throwjava.text.ParseException或者NullPointerException,就說明格式不對
convertSuccess=false;
}
returnconvertSuccess;
}
3. 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,看懂了這個,你那個也就清楚了
4. java如何判斷輸入日期格式是否為指定格式
可以使用正則表達式進行匹配替換,例如下面代碼:
public class app50 {
public static void main(string[] args) {
string demo = "這個日期是2018/5/6書寫出來的";
// xxxx年xx月xx日 格式
string demo2 = demo.replaceall("(\\d{4})/(\\d{1,2})/(\\d{1,2})", "$1年$2月$3日");
system.out.println(demo2);
// xxxx-xx-xx 格式
demo2 = demo.replaceall("(\\d{4})/(\\d{1,2})/(\\d{1,2})", "$1-$2-$3");
system.out.println(demo2);
}
}運行結果:
這個日期是2018年5月6日書寫出來的
這個日期是2018-5-6書寫出來的