4

私のアプリケーションでは、単一のリストに異なるアルファベット/言語で構成される文字列が含まれている場合があります。これらをソートするための正しい方法についての情報や、ICU がこの機能をサポートしていることを示す情報が見つからないようです。

例のリスト:

  • アップル
  • яблоко
  • μήλο
  • 赤ちゃん
  • βρέφος
  • レーベンク
4

4 に答える 4

5

上記のすべての注意事項を踏まえて、ここに「標準のユニバーサル多言語ソート」の 1 つがあります。それは、コードポイント順序ではないUnicode 照合アルゴリズム(UCA) です。このページをざっと見たところ、ICU は UCA とローカル プリファレンスの混合を処理しているように見えます。

于 2010-03-19T12:02:50.343 に答える
2

@Zacで述べたように、ユニバーサルソートはありません。コード ポイントの並べ替えは一貫していますが、ユーザーが期待するものではない場合があります。

そのため、ユーザーが選択したロケールに適した並べ替え順序を使用する必要があります。その並べ替え順序で定義されていないコード ポイントはすべてグループ化されます。

于 2009-09-13T23:13:18.740 に答える
0

「ターゲット」言語に (すべて 1 つのスクリプトで) 音訳してから並べ替えることができます。しかし、言語には、並べ替えに関する相反する規則があります。

于 2009-10-07T17:43:28.430 に答える