2017-02-20 26 views
1

我在Sublime Text 3中使用一個大型文本文件,其中有條目以行分隔。我正在尋找的正則表達式將:出現在DD-MM-YYYY格式出現在DD/MM/YYYY格式 用於匹配日期格式的正則表達式DD-MM-YYYY和DD/MM/YYYY

  • 匹配項

    • 匹配條目如果兩個太複雜,那麼只是第一個例子會做。

      我還沒有做過任何工作來處理這樣的正則表達式,因爲它實際上超出了我的知識範圍,我不知道從哪裏開始,並且尋找類似的處理日期格式的正則表達式的類似答案來證實那些對我的懷疑。

      在此先感謝您的幫助。

  • 回答

    3

    此正則表達式匹配您的例子:

    [0-9]{2}[-|\/]{1}[0-9]{2}[-|\/]{1}[0-9]{4} 
    

    ,但如果你寫了錯誤的日期(如2月31日)這個表達式匹配。

    +0

    完美的作品!謝謝。 – Hashim

    +0

    這是否也接受'dd-mm/yyyy'和'dd/mm-yyyy'?如果是這樣,即使它可能足夠好,它不會做問題的問題,也沒有提到這個事實,所以可能會誤導讀者。 – hvd

    2

    此模式將適用於您的條件。嚴格禁止月份到期,反之亦然。

    ^([0]?[1-9]|[1|2][0-9]|[3][0|1])[./-]([0]?[1-9]|[1][0-2])[./-]([0-9]{4}|[0-9]{2})$ 
    

    此模式將匹配這些格式:(日,月,年)

    25.04.2017 
    02.04.2017 
    2.4.2017 
    
    25/04/2017 
    5/12/2017 
    15/2/2017 
    
    25-04-2017 
    6-10-2017 
    16-5-2017 
    
    +0

    這是對另一個問題的一個很好的答案,但並不是真正的答案。 – hvd