我必須被解析,其可以或可以不包含日期字符串(例如用類似java.time.format.DateTimeFormatter(由於Java 8)或java.text.DateFormat)如何搜索可解析的日期字符串
實施例:
搜索格式
yyMMdd HH-mm-ss
的在字符串的日期This was happend at: 140327 12-08-12, yeah.
日期的格式可能會發生變化,所以無法使用預定義的章恩。
在String中搜索日期的最佳方式是什麼? 是否有可能從DateTimeFormatter獲取正則表達式,例如?
我唯一的想法是算y
,M
,d
等,爲它創造一個正則表達式,但它似乎很醜陋的我上面的例子......
編輯:
日期解析類現在已被精簡。
但確切的解析器並不那麼重要: 我需要一些日期解析器模式和正則表達式模式來搜索字符串中的日期,而不是解析找到的字符串。
解析器模式使用的確切語法並不那麼重要,它可以使用上述示例中的其他語法。
我不知道編譯時的確切日期格式。用戶將輸入日期格式模式(如yyMMdd HH-mm-ss
),並且我必須在字符串中使用此模式搜索日期。 (我可以寫一個自己的函數的日期格式模式轉變成一個正則表達式模式,但......也許這就是媒體鏈接的存在?)
首先,我建議提供描述您稱爲DateTimeFormatter,DateFormat的鏈接。其次,目前還不清楚可能的格式是什麼。沒有描述它,你很難解決你的問題,我們會幫助你。 – YakovL
當你說「可能包含或不包含DateTimeFormatter,DateFormat或類似的日期」時,我會感到困惑。 SimpleDateFormat或DateTimeFormatter或Date Parsers也可用於解析月份,年份或日期。在這種情況下,字符串中的任何數字都可以被讀爲月,年或日期或任何其他時間值。更好的辦法是定義你所需要的一組格式,並根據需要捕獲它們並進行解析。 –