トップ «前の日記(2005-04-27 [J]) 最新 次の日記(2005-04-29 [J])» 編集

Eroge RSS Checker 運営記録

Categories | メモ | 運営 | 感想 | 記号変更 | 雑記 | 雑文 | 思案

合計: 今日: 昨日:
2005年
4月
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

rss1.0

ここは、「Eroge RSS Checker」に関する運営の記録を書きとめておく場所です。第三者に説明する文体で書いていますが、大半は備忘録です。

  1. スクリプトを汎用化して公開する。---最終目標
  2. CSSを論理的に使う。---努力目標
  3. デザインを改善する。---努力目標
  4. 攻略の完全・不完全を出来る限り判別する。---努力目標
  5. 管理要員用のページの充実。---努力目標
  6. JANコードの入手先を探す。---躊躇中
  7. ブランドの複数登録。---大規模改修のとき
  8. 登録を簡潔にしつつ、marker登録を半自動化する。---暇なとき

2005-04-28 [J]

_ [雑記] 日本語ソートは難しい

文字コードによって文字の実体は違う。なので、ソート結果が違ってくる。ということで、mb_convert_encodingが対応している56種類の文字コードでソートしてみたが、当然のことながら、失敗した。

半角にして濁点などを取ったデータをべつに保存しておくか、随時それを作成するかという解決策があるにはある。ただ、濁音などに囚われずにソートするためだけにしては高価過ぎる様な気がして実行はしなかった。だが、毎日1回出力される呼び名リストなら、大したことはないだろうということで、下のコードでカタカナのみの配列を辞書順に並び替えた。

//

function cmp ($a, $b) {

$search = array("゛","゜","ッ","ー","ュ","ョ","ャ");

$replace = array("","","ツ","ア","ユ","ヨ","ヤ");

$a = str_replace ( $search, $replace, mb_convert_kana($a, "k"));

$b = str_replace ( $search, $replace, mb_convert_kana($b, "k"));

return strcmp($a, $b);

}

usort($name, "cmp");

//

出てくるカタカナは全て半角です。「ー」の読み方は一意ではないので、見易さの問題から、「ア」で統一しています。

お名前:
E-mail:
コメント: