![]() |
|||
| | HOME | ご利用について | 推奨環境 | リンクに関して | 免責/規約 | お問合せ | ミスティーネット | リンク集 | | |||
|
HOME >> 漢字の処理について
■ 文字コードについて
文字コードとは、数字しか扱えないコンピュータ上で文字を扱うために作られた、数字と文字のコード表です。
1つの文字に対して、1つの16進数の数字が割り当てられています。 文字コードがややこしいのは、いくつもの文字コードの規格があることです。 代表的なものに下記の4つがあります。 ○ JISコード ・・・ メールによく使われます。Perl で文字コードを利用する場合は、基本的に、EUCコードがよいでしょう。 例外的に、プラットフォームが Windows の場合には、シフトJISコードを使うとよいでしょう。 Perl で日本語を扱う場合、日本語変換ライブラリ(jcode.pl)を使用すると便利です。 jcode.pl は下記ページから入手できます。 → http://srekcah.org/jcode/ 現在(2003/04/21) の最新バージョンは 2.13 のです。 [jcode.pl の使い方]
require "jcode.pl"; ← ライブラリを組み込む
上記プログラムでは、$value の日本語文字を euc コードに変換しています。
$value = '日本語データ'; &jcode'convert(*value,'euc'); ← jcode.pl のサブルーチン(関数)を使用する ■ 文字コードを変換する
&jcode'convert() では、入力された文字の文字コードを変換することが出来ます。
[書式] [文字コードの変換 (EUC)]
require "jcode.pl"; ← ライブラリを組み込む $data = '漢字データ'; jcode::convert(\$data,'euc'); ← $data をEUCコードに変換します(Perl5用) → &jcode'convert(*data,'euc'); ← $data をEUCコードに変換します(Perl4用) [文字コードの変換 (JIS) ・・・ プログラムでメールを送信する場合]
require "jcode.pl"; ← ライブラリを組み込む
プログラムからメールを送信する場合は、文字コードをJISコードに変換して送信する必要があります。$subject = 'メールの件名です'; $message = 'メールの本文です'; jcode::convert(\$subject, 'jis'); ← メールの件名をJISコードに変換(Perl5用) jcode::convert(\$message, 'jis'); ← メールの本文をJISコードに変換(Perl5用) → &jcode'convert(*subject, 'jis'); ← メールの件名をJISコードに変換(Perl4用) → &jcode'convert(*message, 'jis'); ← メールの本文をJISコードに変換(Perl4用) また、メールの件名は本文とは別に変換を行なってください。 ■ 半角 → 全角変換
&jcode'tr() を使うと、半角文字を全角文字に変換することが出来ます。
[書式] &jcode'tr(文字列, 半角文字列, 全角文字列);
require "jcode.pl"; ← ライブラリを組み込む
ここでは、文字列 「Hello! Everyone.」が全角の 「Hello!Everyone.」に変換されます。
$from = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" . "0123456789!\"#\$%&'()*+,./:;<=>?\@[\\]^_`{|}~-"; $to = "abcdefghijklmnopqrstuvwxyz" . "ABCDEFGHIJKLMNOPQRSTUVWXYZ" . "0123456789" . "!”#$%&’()*+,./:;<=>?@[¥]^_‘{|}〜−"; $message = "Hellow! Everyone."; jcode::tr(\$message, $from, $to); ← 半角から全角へ (Perl5用) → &jcode'tr(*message, $from, $to); ← 半角から全角へ (Perl4用) ■ 半角カナ → 全角カナ変換
半角カナを全角カナに変換する場合は、&jcode'convert() を使います。
[書式] &jcode'convert(文字列, 変換したい文字コード, 文字列の文字コード, 'z か h');
require "jcode.pl"; ← ライブラリを組み込む
ここでは、文字列 「ハンカク文字は使えるかな?」が全角の 「ハンカク文字は使えるかな?」に変換されます。
$message = 'ハンカク文字は使えるかな?'; jcode::convert(\$message,"sjis","", "z"); ↑ $message 内の半角カナ文字を全角カナ文字に変換 (Perl5用) &jcode'convert(*message,"sjis","", "z"); ↑ $message 内の半角カナ文字を全角カナ文字に変換 (Perl4用)
|
|||||||||||||||||||||||||||||||||||||||