これからも量産されていくであろう、ユニコード「による」問題だよね。

moriyoshi.hatenablog.com

これの何が恐ろしかったかというと、現実に (とあるインターネットサービス上で) ユーザーが住所の一部に入力した文字としてこのCJK Radicalsが出現し、CP932に変換できないという事案が発生したからだ。

「ユニコード」で予期せぬ目に遭った話 - moriyoshiの日記

個人的に日常的に入力しようとして困る文字に、「☓」と「×」があったりするが、ユーザが見えるのは、似たような文字の形だけに、誤入力を防ぐ事が出来ない。
というか、誤入力だと指摘されても全然どこか検討が付かない事が多く、寄せられないのに悩む場合は多い。


斎藤さん問題もそうなんだが、「正しい表記の為にバリエーションが増える」のはいいけど、「当たり前に寄せるのが困難」という事になりがちで。
まあ、言語レベルでもイラッとくる、「英単語のハイフン問題」とかもそうなんだが・・・・・・
昔のシステムが半角カナとかで出来ていて「なんでこんなクソ面倒なものを」と思ってたら、正しい表記のバリエーションが増えると、姓名ですら寄せるのが面倒(システムによっては許容したり許容しなかったり誤入力されたままだったり)ってのが、地獄。


むかーし、とある会社のとある契約が、合弁した後にちゃんと契約管理されていなかったのが発覚してシステムの中覗いたら、医師名管理マスタがなくて死にかけた事があるが。
エンドユーザはあるがまま入力してくるし誰もバリデーションしてなさげだったしそして医者は市販後調査だからプロトコルあるっつってんのに適用外の患者ブチ込んでくるし、酷かった。契約切れたので逃げたけど。


余談だが、多分この手のライブラリみたいなのはちょこちょこあるし、結構金かけてメンテしてるので有料になっているのも多いかと思う。
んだが、最大公約数的に使えるのが、CP932への変換時に代替文字で置き換えられるかどうかチェックみたいなのになっているだろうとは思う。
昔、VBAでUTF8→CP932→UTF-8みたいなのをWin32APIでやってその比較をコンペアした事があったが、FCコマンドのバグに苦しめられた。FCコマンドだと改行文字を無視して比較してくれる機能があるんだが、255文字だったか256文字だったかが、改行文字を無視しない所が妙に出てくるのである。
この辺りFCコマンドでやるなという話ではあるが、ありあわせのもの使わないとVBAだと速度出ないんだよ・・・・・・今思い出しても面倒臭い。