栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Java:如何以对语言环境敏感的方式显示工作日,月份和日期,而没有年份

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java:如何以对语言环境敏感的方式显示工作日,月份和日期,而没有年份

    String formatPattern = DateTimeFormatterBuilder.getLocalizedDateTimePattern( FormatStyle.FULL, null, IsoChronology.INSTANCE, loc);    formatPattern = formatPattern.replaceFirst("^.*?([MLdEec].*[MLdEec]).*$", "$1");    DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern(formatPattern, loc);    System.out.println(LocalDate.now(ZoneId.of("Pacific/Johnston")).format(dateFormatter));

输出

loc
等于
Locale.US

5月10日,星期四

Locale.UK
(英国)一起:

5月10日,星期四

工作原理:我从一个本地化的格式模式字符串开始。在我的正则表达式中,我识别出与月份(

ML
),月份中的月份(
d
)和星期几(
Eec
)有关的格式模式字母。我将此类字符串的开头到结尾保留子字符串。领先的勉强量词
.*?
可确保我得到第一个匹配的字母。如果某些地区将年份设置在这些想要的元素之间,那么它将最终被包括在内。

我觉得自己太有创意了。在决定您想要这样的东西之前,请先测试您能想到的所有测试示例。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/515644.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号