Bug #1463 [ruby-reference-manual:1429]
String#chars のマルチバイト処理
| Status : | Open | Start : | 05/12/2009 | |
| Priority : | Low | Due date : | ||
| Assigned to : | - | % Done : | 0% |
|
| Category : | doc | |||
| Target version : | - | |||
| reporter : | 5.5 |
ruby_version : | 1.8.7 |
|
Description
Ruby 1.8.7 の String#chars の説明で,$KCODE が適切に設定されていればマルチバイト文字も正しく処理されることを書くべきと思います。 また,サンプルには日本語と英数字が混じった文字列を使うと良いと思います。
History
12/03/2009 02:45 PM - 5 5
パッチです。
Index: refm/api/src/_builtin/String
===================================================================
--- refm/api/src/_builtin/String (revision 3833)
+++ refm/api/src/_builtin/String (working copy)
@@ -2809,10 +2809,14 @@
文字列の各文字に対して繰り返します。
+#@if (version < "1.9.0")
+[[m:$KCODE]] が適切に設定されていれば、マルチバイト文字も正しく扱われます。
+#@end
+
たとえば、
- "hello".each_char {|c| print c, ' ' }
+ "hello世界".each_char {|c| print c, ' ' }
は次のように出力されます。
- h e l l o
+ h e l l o 世 界
#@since 1.9.1