web-dev-qa-db-ja.com

大きな数を短縮するための国際的な慣習/標準?

カジュアルで非科学的な表示(たとえば、12,345を "12.3k"とする)の省略形で大きな数値をフォーマットするという概念は、SEで十分に検討されています。

しかし、これらはどれも国際化とローカリゼーションに対応していません。他の言語やロケールでこれを行う方法には、異なる標準がありますか?特に:

  1. 言語ごとに異なるサフィックスはありますか?
  2. これは、異なるグループ化ルール(例 中国、日本、インド )を持つ番号付けシステムでどのように異なる方法で行われますか?
9
jlarson

短い形式で大きな数を与えることには、まったく異なる基準があります。

人にやさしいリソースではありませんが、ソフトウェア開発者向けに開発されたリソースは、Unicode組織のCommon Locale Data Repositoryです。これらは、さまざまなロケールでの数値や日付などを表示するためのあらゆる種類のデータを持っています(たとえば、言語だけでなく、地域によって言語のバリエーションも異なります。たとえば、英国英語と米国英語は異なる場合があります)。それらには、 数値を簡単にフォーマットする方法 の概要を示すこれらのファイルがあります。

リポジトリに移動する で目的の言語のファイルを開き、「decimalFormats-numberSystem-latn」を検索すると、数値の形式を指定する短いセクションが表示されますその言語。

だから、これが 'en_GB'(English for the UK)で見つけたもの)

  "short": {
    "decimalFormat": {
      "1000-count-one": "0K",
      "1000-count-other": "0K",
      "10000-count-one": "00K",
      "10000-count-other": "00K",
      "100000-count-one": "000K",
      "100000-count-other": "000K",
      "1000000-count-one": "0M",
      "1000000-count-other": "0M",
      "10000000-count-one": "00M",
      "10000000-count-other": "00M",
      "100000000-count-one": "000M",
      "100000000-count-other": "000M",
      "1000000000-count-one": "0B",
      "1000000000-count-other": "0B",
      "10000000000-count-one": "00B",
      "10000000000-count-other": "00B",
      "100000000000-count-one": "000B",
      "100000000000-count-other": "000B",
      "1000000000000-count-one": "0T",
      "1000000000000-count-other": "0T",
      "10000000000000-count-one": "00T",
      "10000000000000-count-other": "00T",
      "100000000000000-count-one": "000T",
      "100000000000000-count-other": "000T"
    }

'ja'ファイル(日本語の場合) を見ると、別のことがわかります。

  "short": {
    "decimalFormat": {
      "1000-count-other": "0千",
      "10000-count-other": "0万",
      "100000-count-other": "00万",
      "1000000-count-other": "000万",
      "10000000-count-other": "0000万",
      "100000000-count-other": "0億",
      "1000000000-count-other": "00億",
      "10000000000-count-other": "000億",
      "100000000000-count-other": "0000億",
      "1000000000000-count-other": "0兆",
      "10000000000000-count-other": "00兆",
      "100000000000000-count-other": "000兆"
    }

(ブラウザでå…†のような奇妙な文字が表示される場合は、ファイルエンコーディングが「Unicode」として表示されるようにブラウザを設定してください。)

...これは最もエレガントなソリューションではありませんが、探しているものを見つけるのに役立ちます。

7
Tim FitzGerald