假设我有一个日期间隔DateInterval,例如"P10DT1H53S",我希望将其格式化为易于理解的字符串,例如:
现在,如果你只打算使用英语进行翻译,那么这是相当容易的。但我正在寻找一种干净且国际化的方法来使用gettext进行翻译。
不幸的是,gettext一次只能处理一个复数形式,而不能同时处理多个(年、天、小时等)。因此,我无法使用ngettext来实现我想要的效果。而且,复数形式在不同语言中差异很大,所以不能简单地迭代并在需要时添加"s"。此外,我必须将它作为一个整体构建,因为我不确定每种语言是否会使用逗号(用一个“and”代替最后一个逗号)来分隔天、小时等。
10 days, 1 hour and 53 seconds
现在,如果你只打算使用英语进行翻译,那么这是相当容易的。但我正在寻找一种干净且国际化的方法来使用gettext进行翻译。
不幸的是,gettext一次只能处理一个复数形式,而不能同时处理多个(年、天、小时等)。因此,我无法使用ngettext来实现我想要的效果。而且,复数形式在不同语言中差异很大,所以不能简单地迭代并在需要时添加"s"。此外,我必须将它作为一个整体构建,因为我不确定每种语言是否会使用逗号(用一个“and”代替最后一个逗号)来分隔天、小时等。