2000・6・26 文字の仕組み「東 京」と「東 京」の違い 図1は秀丸エディターで半角スペースを表示させたものです。 図1
このファイルをバイナリダンプすると図2になります。 図2
解説 コンピュータは「数値」しか扱えません。 ワープロやエディターなどのプログラムを使うと、「数値」を文字として画面表示させるだけです。 文字は、数値によって作成された「画像」です。 この「文字の画像」のことを「フォント」と呼びます。 パソコンの機種によって、またはその設定によって皆さんのディスプレイ上の文字のフォントが違っています。 このホームページをご覧になっている方毎に違うかもしれませんね。 つまり私と貴方とは違う文字を見ている場合が有るのです。 むしろその方が多いかもしれません。 この「文字の画像=フォント」を画面に呼び出す為の「数値」のことを「文字コード」と言います。 図2から、文字コードは 「東」は「938C」 全角スペース(空白)は「8140」 「京」は「8B9E」 半角スペースは「20」 となります。 ちなみに「0D0A」が「CR=キャリッジリターンコード」、つまり「改行コード」です。 この事から、画面上で「東 京」と2個所に表示されていても、間の空白が全角又は半角かによって 全く別のものとなります。 コンピューターで「文字列の検索」をする時は、ユーザは文字の「東 京」で検索しても 実際には、コンピューターは「938C81408B9E」の「数値の組み合わせ」を探しているのです。 したがって、同じ「東 京」でも数値なら「938C20208B9E」の場合が有るわけですから これを前記では探し出す事が出来ないのです。 データベースを作成する時、このような事を想定してフィールド(項目)作成やデータ入力に注意する必要があります。 例えば「姓」と「名」を別々のフィールドにするとかですね。 また、データの間にスペースは出来るだけ入れないようにした方がベストです。 アプローチの検索アシスタントでは、複数の条件を付ける事が出来ますが 同一フィールドでの「AND」が出来ません。 例えば県別等の検索で、{条件1「東」を含むAND条件2「京」を含む}での検索は不可能です。 どちらかの一方のみとなります。 |