国际化中单个字符串中占位符的顺序重要吗?

问题描述 投票:0回答:1

我正在尝试本地化软件。源文本在单个字符串中有多个不同的占位符,但它们看起来都相同。例如,原始文本为:“%s of project %s”。在这种情况下,很明显两个字符串占位符指的是不同的东西。但问题是,当把这个短语翻译成我的语言时,两个 %s 的顺序必须颠倒过来。

由于两个 %s 与 %1s %2s 这样的数字没有区别,我假设顺序很重要,颠倒 %s 将导致完全相反的翻译。我说得对吗?

localization internationalization poedit
1个回答
0
投票

你是对的,如果你不告诉它,你的运行时就无法神奇地知道你的意思。

您没有说明使用什么编程语言以及格式字符串的语法是什么。假设它是 C 或类 C 并与 printf 系列函数一起使用,则可以指定顺序:例如对于这个字符串:

"String `%s' has %d characters"

...德语翻译将这样表示位置:

"%2$d Zeichen lang ist die Zeichenkette `%1$s'"

参见 https://www.gnu.org/software/gettext/manual/html_node/c_002dformat-Flag.html

© www.soinside.com 2019 - 2024. All rights reserved.