相关疑难解决方法(0)

有哪些优秀的非英语短语有单数和复数形式可用于测试国际化和本地化库?

我一直在研究.NET库来协助应用程序的国际化.它是用C#编写的,名为SmartFormat,在GitHub上是开源的.

它包含多种语言的语法数字规则,可根据模板和语言环境确定正确的单数/复数形式.规则是从Unicode语言复数规则获得的.

翻译具有依赖于数量的单词的短语(例如名词,动词和形容词)时,指定多个表单,格式化程序根据这些规则选择正确的表单.

英语示例:(注意语法几乎相同String.Format)

var message = "There {0:is:are} {0} {0:item:items} remaining.";
var output = Smart.Format(culture, message, items.Count);
Run Code Online (Sandbox Code Playgroud)

我想为许多支持的语言编写单元测试.但是,我只会说英语和西班牙语(两者都有相同的语法编号规则).

有哪些优秀的非英语测试用语可以用于这些单元测试? 我正在寻找类似的短语"There {0:is:are} {0} {0:item:items} remaining.".请注意此示例如何根据数量需要特定的动词和名词.

关于语法的说明:

此库查找:分隔的单词,并根据为语言环境定义的规则选择正确的单词.例如,在波兰语中,"文件"一词有3种复数形式:1"plik",2-4"pliki",5-21"plików".因此,您将在格式字符串中指定所有3个表单:"{0} {0:plik:pliki:plików}".

这些单词通常按从最小可能值到最大值排序,例如"{0:zero:one:two:few:many:other}",由Unicode语言复数规则定义.

这里已经讨论了有关此代码的其他信息:单数/复数单词的本地化 - 语法数字的不同语言规则是什么?

.net c# localization string-formatting internationalization

8
推荐指数
1
解决办法
640
查看次数