如何在 ICU MessageFormat 中表示俄语或其他复杂复数语言的复数规则



鉴于复数规则的不寻常性质,我们如何在ICU MessageFormat中表示俄语?

MessageFormat支持复数,如{arg, plural, =1 {one} other {other}}和更复杂的{arg, plural, =0 {none} =1 {one} =2 {few} other {several}}

然而,有时使用的文本不能在没有一些计算的情况下直接由数字确定;我们如何做到这一点?俄语有三个基于数字最后一位数字的复数规则,11-14 除外。

我查看过的信息:

俄语复数化

http://www.russianlessons.net/lessons/lesson11_main.php

邮件格式规则

http://userguide.icu-project.org/formatparse/messages

各种语言的复数规则数量

https://developer.mozilla.org/en-US/docs/Mozilla/Localization/Localization_and_Plurals

俄罗斯ICU苹果复数示例(яблоко(。

{arg, plural, =0 {нет яблок} one {одно яблоко} few {{arg} яблока} other {{arg} яблок}}

one适用于以 1 结尾的数字,但 11 除外

few同样适用于以 2、3、4 结尾的数字,但 12、13 和 14 除外

other只是"多"形式

最新更新