使用带有额外字符的DateTimeFormatter来解析日期。

我如何使用DateTimeFormatter解析一个带有额外字符的字符串日期。

例子:”我的生日是2001-01-01 10:14:14 “我的生日是2001-01-01 10:14:14”

解决方案:

你可以使用这个模式来解析你的字符串。

DateTimeFormatter formatter = DateTimeFormatter.ofPattern(
        "'My birthday is' uuuu-MM-dd HH:mm:ss"
);
LocalDateTime ldt = LocalDateTime.parse(str, formatter);

输出

2001-01-01T10:14:14

如果你的字符串发生了变化,那么你应该使用例如regex提取datetime部分,然后解析结果,例如。

String newStr = str.replaceFirst(".*?(\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}).*?", "$1");
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(
        "uuuu-MM-dd HH:mm:ss"
);
LocalDateTime ldt = LocalDateTime.parse(newStr, formatter);
System.out.println(ldt);

给TA打赏
共{{data.count}}人
人已打赏
未分类

材质 UI Fab 按钮停留在左侧分割窗格下。

2022-9-8 21:27:40

未分类

禁用CUDA编译器驱动程序的二进制缓存

2022-9-8 21:27:42

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索