作者: davi
日時: 2008/6/26(06:46)
Bruce.さん  <  こん??は でび です

早速ありがとうございます。

On Thu, 26 Jun 2008 02:37:28 +0900
"Bruce." <kbk@...> wrote:

> 元データを改変しちゃうとあとで泣けますから、やらないほうがいいでしょう。

ああ、やっぱり。

> Yささんのやり方がほぼそのまま回答ですが、自分の望むオーダーの
> データ列を作ってそれをソートのキーにすればいいです。

平たく言うとそういう希望なわけですが、ネット上では上手くサンプルを
見つけられませんでした。
何列目に注目したテーブルソートの例は沢山あるようですが。

> awkだとちょっと厳しいところがありますが、ほかのメジャーなスクリプティング
> 言語なら、タプルなり多次元配列なりをつかえばすっきりとデータを表せるでしょう。

タプルで仮番号を振る感じでしょうか。
或いは、結合文字(+U3099〜+U309Cの濁点、半濁点と平仮名/カタカナ
での結合操作など、)の場合の処理を想定しておっしゃっているのでしょうか?

# 3099と309Bに濁点が二種あるのは縦書き用結合要素と横書き用結合要素っぽい。
# カキクケコに丸が付いたアイヌ語用カナの結合などでは、これを使えって
# ことらしいですな…。

> 参考までに、POSIXでは sort order が文字コード順とは限りません。
> collation order のデータベースを持っていてそれに従います。

参考例はSUN(のunix)OS付属のドキュメント?
つーことは、オプションで細かく指定できるsortコマンドもある、って示唆かしらん?

> とはいえUnicode(特に5.0とか)でcollation order を全文字に対して
> 振っていくのは大変でしょうね :)

collation orderのリスト作成は、UnihanDBに部首番号と画数番号が
付いているので、それを参考にしながら、後は複数の辞書をかれこれ
見ながら力業でやるしかないと思っています。

> http://docs.sun.com/app/docs/doc/805-3172/6j31br5no?l=Ja&a=view

ちと、がんばって読んでみます。

# 7月末を目標に、ゆっくり読んで、試してみる、と。

でび  http://davi.txt-nifty.com/1984/