どうにもこの業界では知っておかなければいけない常識なのにGoogleなどで引っかからないようなので、あえて書いておく。
清音化とは所謂半角カナの中から濁音、半濁音を除去したものです。
半角カナ清音化用辞書.Add("゙", "");
半角カナ清音化用辞書.Add("゚", "");
これをすることにより、所謂半角カナの中にある清濁のゆれを除去します。
次に大字化は、
半角カナ大字化用辞書.Add("ッ", "ツ");
半角カナ大字化用辞書.Add("ァ", "ア");
半角カナ大字化用辞書.Add("ィ", "イ");
半角カナ大字化用辞書.Add("ゥ", "ウ");
半角カナ大字化用辞書.Add("ェ", "エ");
半角カナ大字化用辞書.Add("ォ", "オ");
半角カナ大字化用辞書.Add("ャ", "ヤ");
半角カナ大字化用辞書.Add("ュ", "ユ");
半角カナ大字化用辞書.Add("ョ", "ヨ");
これらの拗音、促音のゆれを除去します。
これらを組み合わせることが最も多く、次に多いのは清音化を行わずに大字化だけ行うというパターンです。
両方組み合わせると以下のような感じになります。
ウィンドウズ→ウイントウス
ここでは所謂半角だけを取り上げましたが、所謂全角の場合には少し対象になる文字が変わってきます。
カナとかなの両方をどうするかも考慮しなければいけません。
半濁音の範囲も広がり、"か゜orか?"や"う゛orヴ"のような濁音などは単独文字の場合もあれば結合文字の場合もあります。
文字も増えます。
文字が出ないと思うので、絵で
これらの文字をどう扱うかなどを考える必要があります。
さてここまで見てきたこれらの処理は一体何に使うのでしょうか。
一般的には送り仮名のさらに検索用として内部的に保持する場合によくつかわれます。
検索するときに語の揺れをできるだけ丸めて検索精度を上げようというインターネット時代の辞書化して、揺らぎなども吸収して検索できるようにしようという考えとは全く違う考え方に基づきます。
インターネット時代の検索方法はかなりコストの高い方法で、なかなか一般のシステムにそのまま取り入れる時代は来ていません。
現在のシステム開発ではまだまだ有用なテクニックなので必ず覚えておきましょう。