[REBOL] Re: how do I get ampm format for time?
From: bo:rebol at: 19-Jan-2001 9:52
I based this off what Scott submitted but reduced it a bit:
time-ampm: func [dt][join dt // 12:00 [pick "AP" dt < 12:00 "M"]]
It shows an alternate method of tackling this problem using a few
REBOL tricks.
Anybody have a shorter version? I'm sure there is one out there...
-Bo
On 19-Jan-2001/4:52:34-6:00, [gjones05--mail--orion--org] wrote:
>"Rebol/Core User's Guide" (page 63) also gives the following example:
>
>print either now/time < 12:00 ["AM"]["PM"]
>
>This approach could be easily adapted to:
>
>time-ampm: func [dt] [either dt < 12:00 [return join dt "AM"][return join
>dt - 12:00 "PM"]]
>
>>> time-ampm 8:00
>== "8:00AM"
>
>>> time-ampm 18:00
>== "6:00PM"
>
>Hope this is helpful.
>
>Scott
>
>----- Original Message -----
>From: "Bob Racko" <[bobr--dprc--net]>
>To: <[rebol-list--rebol--com]>
>Sent: Friday, January 19, 2001 12:51 AM
>Subject: [REBOL] how do I get ampm format for time?
>
>>
>>
>> how do I format dates to am/pm format
>> like: "hh:mm pm EST"
>>
>> is there a more succinct way to write this?
>>
>> time-ampm: func [ dt ]
>> [ rejoin [
>>
>> ; handle hh:mm part
>> ( replace ( copy/part (
>> rejoin [
>> (either dt/time < 10:00 [ "0" ] [ "" ]) ; hh:mm vs [h]h:mm
>> either dt/time > 12:59:59
>> [ mold dt/time - 12:00 ]
>> [ mold dt/time ]
>> ]
>> ) 5 ) "00:" "12:" ) ; midnite-1am is special
>>
>>
>> ; handle " pm EST" parts
>> either dt/time > 11:59:59
>> [ " pm" ]
>> [ " am" ]
>>
>> " EST"
>> ]]
>>
>> yes this does the job, perhaps a mold could be factored out
>> and some parens are not needed. now the challenge
>> is to write something that handles the exceptions
>> with less code. this version allows coding by deletion
>> since the two parts hh:mm vs am/pm indicator
>> are treated separately and simply concatenated.
>>
>> --
>> To unsubscribe from this list, please send an email to
>> [rebol-request--rebol--com] with "unsubscribe" in the
>> subject, without the quotes.
>>
>
>--
>To unsubscribe from this list, please send an email to
>[rebol-request--rebol--com] with "unsubscribe" in the
>subject, without the quotes.
>
--
Bohdan "Bo" Lechnowsky
REBOL Adventure Guide
REBOL Technologies 707-467-8000 (http://www.rebol.com)
The Official Source for REBOL Books (http://www.REBOLpress.com)