首页 > 解决方案 > 为什么 ICU 对日期的“独立”值有区别?

问题描述

ICU 对“独立”值有不同的格式符号。例如:

q   Stand Alone quarter
L   Stand Alone month in year
c   Stand Alone local day of week

该文档指出:

“独立”值是指那些旨在独立存在的值,而不是与其他格式化值一起使用的值。“第二季度”将使用独立格式(QQQQ),而“2007 年第二季度”将使用常规格式(qqqq yyyy)。

但是,这并不能解释为什么会有区别。我认为这对某些语言很重要,但有哪些例子?

(更令人困惑的是,该文档自相矛盾,因为它同时使用qQ独立版本。)

我还认为其他字段(例如年、小时、分钟、秒)不需要独立版本,因为它们是数字的。但是,如果是这种情况,为什么工作日、月份和季度的独立值支持数字形式?

标签: icu

解决方案


我最终提交了ICU-21225以纠正文档中的矛盾并要求澄清。其中一条评论将我引导至https://www.unicode.org/reports/tr35/tr35-dates.html#months_days_quarters_eras,其中指出:

上下文可以是format(默认值),即在完整日期格式字符串中使用的表单(例如“Saturday, November 12”),或者是独立的,即独立使用的日期元素的表单,例如在日历标题中。格式和独立形式之间最重要的区别是语法区别,对于需要它的语言。例如,许多语言要求没有关联日期编号的月份名称(即独立形式)采用基本主格形式,而带有关联日期编号的月份名称(如完整日期格式)应该采用不同的语法形式:属格部分等。

不过,我仍然对特定示例(哪些语言?)感到好奇。


推荐阅读