Skip to content

koron-go/janorm

Repository files navigation

Japanese Charaters Normalization

PkgGoDev Actions/Go Go Report Card

日本語の文字(キャラクタ)を検索等に適した形に正規化します。

日本語のキャラクタセットには1つの文字にも拘わらず、 描画幅の違いで異なるコードポイントを割り当てられたものが存在します。 数字(123 or 123)やカタカナ(イロハ or イロハ)等がその代表です。 いわゆる半角・全角と言われるものです。

またほぼ同じ字形にも拘わらず複数のコードポイントを割り当てられた記号も存在します。

janorm パッケージはこのような日本語文字の多義性をいずれかに変換・統一または削除することで正規化し、 検索等の機械処理に適した形に変換します。

大まかな正規化(変換)ルールは以下の通りです。

文字種 正規化方法 正規化の例
数字 半角 012345012345
アルファベット 半角 ABCxyzABCxyz
ASCII記号 半角 !"#$% !”#$%
句点,読点,中点,カッコ,調音記号 全角 。、・「」ー。、・「」ー
カタカナ 全角 アイウエオアイウエオ
半カタ+濁点・半濁点 全角 ヴガギグヴガギグ
ハイフンマイナス記号 統一 -
全角長音記号 統一
チルダ状記号 削除 (n/a)