報國挺身日記 このページをアンテナに追加 RSSフィード

2006/10/17 浮野の戦い

[] 完成 23:07

何とか出来たようだ。19日に出す。

2006/10/14 浄土夢

[] 予定 20:46

事前の予想よりもメモリ消費は抑えられそうだが、その代わり処理が少し複雑になった。来週の火曜日ぐらいに完成か? リリースは木曜日か金曜日になりそう。

2006/10/10 固有の皇道

[] 手応え 23:19

今日はかなり良い感じで作業が進んだ。これなら今週中には完成しそうだ。

2006/10/07 発微算法

[] Unicode Caseless Match (5) 20:29

UnicodeのCase Fold情報を組み込んで、他の文字コードと同様の機能を実装すれば終了、と書いたが、実際にはこれが問題。変換の数が981個あって、逆方向の変換も入れると2000個近くになる。Unicodeの実装をするときは、富豪的な感覚でなければ出来ない。自分自身の「貧乏臭い思考方法」との戦いになりそうだ。

2006/10/06 宇気比の戦い

[] Unicode Caseless Match (3) 22:40

Caseless Matchの実装の書き換えは大体終わった。あとは、UnicodeのCase Fold情報を組み込んで、他の文字コードと同様の機能を実装すれば終了する。

この書き換えによって、仕様が少し変わった。

[] Unicode Caseless Match (4) 22:40

デフォルトでは有効にはなっていないが、オプション機能として、一文字と複数文字のcase-fold変換になる場合、それが機能するのは一個の文字列部分パターンか、一個の文字クラス部分パターンの中だけであり、それ以外の部分パターンでは機能しない。

U+00DFとU+0073;U+0073(ss)の場合、以下のパターンであればマッチする。

/\x{00DF}/i =~ "ss"
/SS/i       =~ "\x{00DF}"
/\A[\w]\z/i =~ "ss"

以下のパターンはマッチしない。

/s[s]/i     =~ "\x{00DF}"
/\A.\z/i    =~ "ss"
/\A\w\z/i   =~ "ss"
/\A\w\w\z/i =~ "\x{00DF}"

Perlを含めて他がどうなっているのかは調べていないが、こういう仕様で問題ないと思う。