{{category プログラミング}}

!!![Ruby|http://www.ruby-lang.org/ja/]

!! Ruby 2.0

[プログラミング言語Ruby|http://www.ruby-lang.org/ja/]のバージョン2.0では、
JIS X 0213の符号化方式のひとつEUC-JIS-2004に対応しました。

文字コードの名前として "EUC-JIS-2004" という名前で入っています。
文字コードを指定する場面でこの名前を指定すればOKです。
Ruby 2.0では"EUC-JP-2004" となっていましたが、2.1.3で "EUC-JIS-2004" に修正されました。

JavaやPython等と異なり、内部処理用にUnicodeに変換するのでなく、
EUC-JIS-2004のコード自体を直接処理することができます。
Unicodeとの変換も可能です。

一方、過去のバージョンで使用できたIconvクラスは2.0では削除されているので、
これを利用してEUC-JIS-2004やShift_JIS-2004のテキストデータを変換することは
できなくなっています。

!! Ruby 1.8

Ruby 1.8系では、
マニュアルには明記されていませんが下記の要領でJIS X 0213のコードを処理
可能です。

*漢字コードがSJISの場合 (起動オプション -Ks): Shift_JIS-2004
*漢字コードがEUCの場合 (起動オプション -Ke): EUC-JIS-2004

いずれも、2面の文字も正規表現で「1文字」としてマッチします。

また、Iconvクラスによるコード変換で、Shift_JISX0213、EUC-JISX0213、
ISO-2022-JP-3 が扱えます (呼び出すiconvの実装、バージョンに依存します)。

ただし、NKFクラスによるコード変換は使えません。([[nkf]]がJIS X 0213に対応
していないため)

!!関連項目

* Python - 同じくWeb開発に用いられる軽量言語
* PHP - 同じくWeb開発に用いられる軽量言語