[#45609] ruby 1.8.6のNKFにおける漢字変換の不具合について — 京和 崇行 <kyowa_t@...>

初めましてこんにちは。カカクコムの京和と申します。

14 messages 2008/11/04

[ruby-list:45623] String#ljust, center, rjustの挙動

From: rubikitch@...
Date: 2008-11-07 21:18:23 UTC
List: ruby-list #45623
るびきちです。

簡単な表整形のためにString#ljust, String#rjust, String#centerを使っています。
EUC-JPは通常バイト数=文字長であるためRuby 1.8だと決められた幅に配置できました。
しかしRuby 1.9ではASCII文字も日本語文字も長さ1で処理するようになったため、
幅が伸びてしまいます。
決められた幅の文字列において整形できると嬉しいです。

#!/usr/local/bin/ruby -Ke
# -*- coding: euc-jp -*-
RUBY_VERSION  # => "1.8.7"
s = "日本語"
s.center(10)  # => "  日本語  "
s.ljust(10)   # => "日本語    "
s.rjust(10)   # => "    日本語"

#!/usr/local/bin/ruby -Ke
# -*- coding: euc-jp -*-
RUBY_VERSION  # => "1.9.0"
s = "日本語"
s.center(10)  # => "   日本語    "
s.ljust(10)   # => "日本語       "
s.rjust(10)   # => "       日本語"
--
rubikitch
Blog: http://d.hatena.ne.jp/rubikitch/
Site: http://www.rubyist.net/~rubikitch/

In This Thread

Prev Next