Robert Klemme
8/17/2007 11:10:00 AM
2007/8/17, Simon Schuster <significants@gmail.com>:
> afile = "2007-08-10.152314-0700PDT.txt"
>
> some notes about it, is that the first part before the . is date, and
> subject to change, the second I thought was an arbitrary id for logs
> of the same day, but it's a timestamp, and the "-0700PDT.txt" is
> always the same per log per day and can be cut out as such.
That bit looks like a time zone offset with the name ("PDT" which is
"Pacific Daylight Savings Time" IIRC).
> The date,
> as well, can be discarded. I'm just looking to isolate, and then
> parse, the "152314" in this case.
>
> this is as far as I've gotten:
> 089:0> afile.split(/^\d+-\d+-\d+./)
> ["", "152314-0700PDT.txt"]
>
> nevermind I just figured out I could do:
> afile.scan(/\d\d\d\d\d\d/)
> ["152314"]
>
> having taken the time to formulate the question though I'm just going
> to send it because you people are so nice I want to give any little
> bit I've got. :)
If you want to be really sure you parse the name that you expect you can do
irb(main):001:0> afile = "2007-08-10.152314-0700PDT.txt"
=> "2007-08-10.152314-0700PDT.txt"
irb(main):002:0> afile[/^\d{4}-\d{2}-\d{2}\.(\d{6})-\d{4}[A-Z]+\.txt$/, 1]
=> "152314"
Kind regards
robert