[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dennou-ruby:003069] Re: Fw: 電脳Rubyで2次元gribファイル読み込み



栗田様


> また、プログラム内で、tmp_yyyymmddhh.gribというファイルから、
> 時間情報を取り出しているのですが、
>
> fname=tmp_2008010100.grib
> p fname.slice(-15..-6)
>  => "2008010100"
>
> p fname.slice(-15..-6).split(/(....)(..)(..)(..)/)
>  => ["", "2008", "01", "01", "00"]
>
> と最初に""が入ってしまいます。どうもPerlと勝手が違うようで、
> 正規表現が間違っているのが大きな原因だと思いますが、、、、
slice は本来の意味は、与えられた正規表現にマッチする区切り文字で分割する ということですので、
ここではあまり適当ではないかもしれません。
素直に
 /_(\d{4})(\d{2})(\d{2})(\d{2})/ =~ fname
yy = $1
mm = $2
dd = $3
hh = $4
とするのがよいと思います

西澤

-- 
Seiya Nishizawa
Department of Earth and Planetary Atmospheric Sciences, Kobe University