亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

搜索
java - 正則表達(dá)式 表示YYYY-MM-DD
巴扎黑
巴扎黑 2017-04-17 13:33:12
[Java討論組]

想問一下
java中如何判斷一個字符串時間 是否是YYYY-MM-DD 正則怎么寫啊 謝謝

巴扎黑
巴扎黑

全部回復(fù)(4)
ringa_lee

YYYY-MM-DD

最簡單的寫法

[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]
\d\d\d\d-\d\d-\d\d
\d{4}-\d{2}-\d{2}

改進(jìn)

1 把年份前兩位限定為19或20

(19|20)[0-9][0-9]-[0-9][0-9]-[0-9][0-9]

2 把月份限定為01到12

(19|20)[0-9][0-9]-(0[1-9]|1[0-2])-[0-9][0-9]

3 把日期限定為01到31

(19|20)[0-9][0-9]-(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-9]|3[01])
(19|20)[0-9][0-9]-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])
ringa_lee

其實(shí)我建議你用SimpleDateFormat來parse一下,沒有exception就是你想要的日期格式了。

SimpleDateFormat s =  new SimpleDateFormat("yyyy-MM-dd");
s.parse(source)
PHPz

這樣就可以匹配到日期字符串了

public class Q1010000002719930 {
    public static void main(String[] args) {
        matchDateString("2015-4-30"); //false
        matchDateString("2015-04-30"); //true
        matchDateString("2015-02-20"); //true
    }

    private static void matchDateString(String string) {
        Pattern pattern = Pattern.compile("(\\d){4}-(\\d){2}-(\\d){2}");
        Matcher matcher = pattern.matcher(string);
        System.out.println(matcher.find());
    }
}
PHPz
(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[13579][26])00))-02-29)

參考

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板
關(guān)于我們 免責(zé)申明 意見反饋 講師合作 廣告合作 最新更新
php中文網(wǎng):公益在線php培訓(xùn),幫助PHP學(xué)習(xí)者快速成長!
關(guān)注服務(wù)號 技術(shù)交流群
PHP中文網(wǎng)訂閱號
每天精選資源文章推送
PHP中文網(wǎng)APP
隨時隨地碎片化學(xué)習(xí)
PHP中文網(wǎng)抖音號
發(fā)現(xiàn)有趣的

Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號