[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[dennou-ruby:003069] Re: Fw: 電脳Rubyで2次元gribファイル読み込み
- To: dennou-ruby@xxxxxxxxxxx
- Subject: [dennou-ruby:003069] Re: Fw: 電脳Rubyで2次元gribファイル読み込み
- From: Seiya Nishizawa <seiya@xxxxxxxxxxxxxx>
- Date: Thu, 5 Mar 2009 10:45:33 +0900
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:date:x-google-sender-auth:message-id:subject:from:to :content-type:content-transfer-encoding; bh=Qeiw8L1Pjj9aqgT7PvLfKO18c+GsY8DFsxHUSu9AXiI=; b=s5HLH2ixrNp2SkWpaehNU6gUCO7asuUnUvAgwpZTuEkhW4jya2RSLrrHJ+z4c+H5dl PZaWJgKPtSrGKlVCGWiqIns8CXNCWmB9Zcejxa88JSiSZ/O0+E4QgvFOEw4X+CRbcu0z KfLLwQi5W2eMZSA+QG5ytupjhspbdzm4bdqxk=
- Sender: seiyani@xxxxxxxxx
栗田様
> また、プログラム内で、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