1

ここにコードがあります

<code>
     <source> %1 added %2 to the group </source>
     <translation type="unfinished"> 1% أضاف %2 للمجموعة</translation>
</code>

問題は、翻訳でテキストを逆にしたいので、「1% أضاف %2 للمجموعة」の代わりに、次のようにしたいことです。

なんらかの理由で、メモ帳でさえ、アラビア語は右から左に書かれるため、アラビア語の文の右端に %1 を置くことを許可していません。

これに対する回避策はありますか?

4

1 に答える 1

1

数字とパーセント記号の書き込み方向を強制する必要があります。それらはすべて左から右の文字です。これは、文字列「1%」の先頭が左側に書かれているためです。その後、アラビア文字はすべて右から左になり、「2%」は再び左から右になりますが、すぐにアラビア語の右から左に戻ります。したがって、出力は完全に正しいです。

意図したことを達成するには、文字列の先頭で右から左への書き込み方向を強制する必要があります。文字列の最初の位置 start の前に RTL 文字 (‏ または Unicode では U+200F) を追加すると、次のように表示されます。

‏1% أضاف %2 للمجموعة

重要な位置 (数字とパーセンテージの直前) にさらに RTL 文字を挿入すると、次のようになります。

‏1‏% أضاف ‏%2 للمجموعة
于 2015-10-21T21:11:36.550 に答える