|ATOM |RDF トップ «前の日記(2005-02-05 [土]) 最新 次の日記(2005-02-07 [月])» 編集 a
2002|03|04|05|06|07|08|09|10|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|07|08|09|10|
2006|02|05|06|

たわごと


2005-02-06 [日]

_ [apricot] apricot ver 0.60

  • IgnoreListへの対応

_ [Ruby] マルチバイト文字の部分文字列切り出し

Rubyの文字列から部分文字列を切り出したいとき、文字化けが発生する事があります。 例えば先頭からマルチバイト文字の途中まで切り出そうしたとき

$KCODE = 'sjis'
str = "銃を向けられるたび5セントもらってたら、今ごろ大金モチだぜ"
str2 = str[0 .. 8]                       # 先頭から9バイト
p str2   #=> "銃を向け\202"
このように化けてしまいます。対策としてはこんな感じで。

$KCODE = 'sjis'
str = "銃を向けられるたび5セントもらってたら、今ごろ大金モチだぜ"
str2 = str[0 .. 8]
str2[-1,1] = '' if /.\z/ !~ str2         # 末尾文字削除
p str2   #=> "銃を向け"
文字列の途中から切り出すときは先頭文字も気をつけないとなりませんね。
本日のTrackBacks(全3件) [TrackBack URL: http://yaya.sakuratan.com/diary/tb.rb/20050206]
_ all hermes bags:all hermes bags (2014-11-25 [火] 06:40)

hermes constance bag cost たわごと(2005-02-06)

_ shop hermes bags:shop hermes bags (2014-11-26 [水] 19:59)

hermes belt saks たわごと(2005-02-06)

hermes paketaufkleber zum drucken たわごと(2005-02-06)