jsr-310有一个方便的类DateTimeFormatters
,它允许您构造DateTimeFormatter
。我特别喜欢pattern(String)
方法-请参阅javadoc
但是,我遇到了一个区分大小写的问题-例如
DateTimeFormatters.pattern("dd-MMM-yyyy");
与“2012年1月1日”匹配,但与“2012年1月1日”或“2012年1月1日”匹配。
一种方法是分解字符串并解析组件,另一种方法是使用Regex将不区分大小写的字符串替换为区分大小写的字符串。
但这似乎应该是一种更简单的方法...
最佳答案
根据User Guide(离线,请参见JavaDoc),您应该使用DateTimeFormatterBuilder
来构建复杂的DateTimeFormatter
例如
DateTimeFormatterBuilder builder = new DateTimeFormatterBuilder();
builder.parseCaseInsensitive();
builder.appendPattern("dd-MMM-yyyy");
DateTimeFormatter dateFormat = builder.toFormatter();