Re: Parsing timestamps?

Liste des GroupesRevenir à cl forth 
Sujet : Re: Parsing timestamps?
De : dxforth (at) *nospam* gmail.com (dxf)
Groupes : comp.lang.forth
Date : 06. Oct 2024, 13:58:55
Autres entêtes
Organisation : i2pn2 (i2pn.org)
Message-ID : <306ac44092ac6cd60b0d98b34d5b323b48996f58@i2pn2.org>
References : 1 2
User-Agent : Mozilla Thunderbird
On 6/10/2024 7:59 pm, mhx wrote:
On Sun, 6 Oct 2024 7:51:31 +0000, dxf wrote:
 
Is there an easier way of doing this?  End goal is a double number
representing centi-secs.
>
>
empty decimal
>
: SPLIT ( a u c -- a2 u2 a3 u3 )  >r 2dup r> scan 2swap 2 pick - ;
: >INT ( adr len -- u )  0 0 2swap >number 2drop drop ;
>
: /T ( a u -- $hour $min $sec )
  2 0 do  [char] : split  2swap  dup if 1 /string then  loop
  2 0 do  dup 0= if 2rot 2rot then  loop ;
>
: .T  2swap 2rot  cr  >int . ." hr "  >int . ." min " >int . ." sec " ;
>
s" 1:2:3"    /t .t
s" 02:03"    /t .t
s" 03"       /t .t
s" 23:59:59" /t .t
s" 0:00:03"  /t .t
 
Why don't you use the fact that >NUMBER returns the given
string starting with the first unconverted character?
SPLIT should be redundant.

Good idea!

: /T ( a u -- hour min sec )
  3 0 do
    0 0 2swap >number rot drop ( u ... a u)
    dup if  over c@ [char] : = 1 and /string  then
  loop 2drop
  2 0 do  dup 0= if rot rot then  loop ;

: .T  cr  . ." sec "  . ." min " . ." hr " ;

s" 1:2:3"    /t .t
s" 02:03"    /t .t
s" 03"       /t .t
s" 23:59:59" /t .t
s" 0:00:03"  /t .t


Date Sujet#  Auteur
6 Oct 24 * Parsing timestamps?56dxf
6 Oct 24 +* Re: Parsing timestamps?19mhx
6 Oct 24 i+* Re: Parsing timestamps?3dxf
6 Oct 24 ii`* Re: Parsing timestamps?2dxf
7 Oct 24 ii `- Re: Parsing timestamps?1dxf
7 Jun13:38 i`* Re: Parsing timestamps?15B. Pym
7 Jun15:36 i +* Re: Parsing timestamps?12dxf
7 Jun18:07 i i`* Re: Parsing timestamps?11LIT
8 Jun03:38 i i `* Re: Parsing timestamps?10dxf
9 Jun14:21 i i  `* Re: Parsing timestamps?9Hans Bezemer
9 Jun14:34 i i   `* Re: Parsing timestamps?8LIT
9 Jun20:31 i i    `* Re: Parsing timestamps?7Hans Bezemer
9 Jun21:00 i i     `* Re: Parsing timestamps?6LIT
10 Jun03:31 i i      +* Re: Parsing timestamps?4dxf
10 Jun08:32 i i      i+* Re: Parsing timestamps?2mhx
10 Jun09:30 i i      ii`- Re: Parsing timestamps?1dxf
10 Jun11:10 i i      i`- Re: Parsing timestamps?1LIT
10 Jun10:52 i i      `- Re: Parsing timestamps?1LIT
9 Jun13:34 i +- Re: Parsing timestamps?1B. Pym
10 Jun10:18 i `- Re: Parsing timestamps?1B. Pym
6 Oct 24 +* Re: Parsing timestamps?5Ruvim
6 Oct 24 i`* Re: Parsing timestamps?4dxf
6 Oct 24 i `* Re: Parsing timestamps?3Ruvim
6 Oct 24 i  +- Re: Parsing timestamps?1Ruvim
6 Oct 24 i  `- Re: Parsing timestamps?1Ruvim
6 Oct 24 +* Re: Parsing timestamps?6FFmike
6 Oct 24 i`* Re: Parsing timestamps?5FFmike
7 Oct 24 i `* Re: Parsing timestamps?4dxf
7 Oct 24 i  `* Re: Parsing timestamps?3FFmike
7 Oct 24 i   `* Re: Parsing timestamps?2dxf
7 Oct 24 i    `- Re: Parsing timestamps?1FFmike
6 Oct 24 +* Re: Parsing timestamps?2Anthony Howe
7 Oct 24 i`- Re: Parsing timestamps?1dxf
7 Oct 24 +* Re: Parsing timestamps?9albert
7 Oct 24 i`* Re: Parsing timestamps?8dxf
7 Oct 24 i `* Re: Parsing timestamps?7sjack
8 Oct 24 i  `* Re: Parsing timestamps?6dxf
8 Oct 24 i   +* Re: Parsing timestamps?3Ahmed
8 Oct 24 i   i+- Re: Parsing timestamps?1dxf
8 Oct 24 i   i`- Re: Parsing timestamps?1sjack
8 Oct 24 i   `* Re: Parsing timestamps?2sjack
9 Oct 24 i    `- Re: Parsing timestamps?1dxf
8 Oct 24 +* Re: Parsing timestamps?3albert
8 Oct 24 i`* Re: Parsing timestamps?2dxf
8 Oct 24 i `- Re: Parsing timestamps?1Ahmed
9 Oct 24 +* Re: Parsing timestamps?4alaa
10 Oct 24 i+* Re: Parsing timestamps?2dxf
10 Oct 24 ii`- Re: Parsing timestamps?1alaa
16 Oct 24 i`- Re: Parsing timestamps?1Hans Bezemer
18 Oct 24 `* Re: Parsing timestamps?7Gerry Jackson
19 Oct 24  `* Re: Parsing timestamps?6dxf
28 Oct 24   `* Re: Parsing timestamps?5Hans Bezemer
29 Oct 24    `* Re: Parsing timestamps?4dxf
29 Oct 24     `* Re: Parsing timestamps?3Hans Bezemer
30 Oct 24      `* Re: Parsing timestamps?2dxf
31 Oct 24       `- Re: Parsing timestamps?1dxf

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal