Ruby で半角カナを全角に,全角数字を半角に

Ruby を使って次のことを行う関数を定義します.

ソースコード

#! ruby -Ks
# coding: windows-31j

require 'nkf'
require "jcode"

def hankana_to_zenkana(s)
  # 半角カナを全角に.nkf を使用
  # nkf については http://www.ruby-lang.org/ja/man/html/nkf.html
  return NKF::nkf( '-Ss', s )
end

def zensuji_to_han(s)
  # 半角カナを全角に変える.同時に全角数字を半角数字に変える
  return NKF::nkf( '-Ssm0Z1', s )
end

# 半角から全角
print "コンニチ\n"
print hankana_to_zenkana "コンニチハ\n"

# 機種依存文字
print "12345 こんにちは 「㈱‖〜−¢£¬|\n"
print hankana_to_zenkana "12345 こんにちは  「㈱‖〜−¢£¬|\n"

# 全角から半角
print "12345 こんにちは 「㈱‖〜−¢£¬|\n"
print zensuji_to_han "12345 こんにちは  「㈱‖〜−¢£¬|\n"

実行結果の例

「‖〜−¢£¬|」