[comp.os.vms] Parsing ranges with CLD routines

lpz%ocu.DECnet@STC10.CTD.ORNL.GOV ("OCU::LPZ") (06/17/88)

Michael Dorl asked:
          
>I need to allow numeric ranges on a command scanned by the CLD
>routines.  After looking at various existing VMS commands, the only
>things I've found look something like...
> 
> xyx=(start:7,end:43),19
> 
>now that's not exactly convenient to type.  I'd prefer something
>like:
> 
> xyz=7-43,19
> 
>The only thing that occurs to me is use the + character as the
>separator.
> 
> xyz=7+43,19
> 
>but that's a bit obscure!  Does anyone have any ideas how to do this?
> 
         I wrote a program which has to parse ranges, and I basically
         mimiced the Authorize utility's primary/seconday time function.
         
         This allows the following syntax:
         
         (1-23) - from 1 to 23
         (1,4,8) - 1, 4, and 8
         (1,4,8-15,22) - 1, 4, from 8 to 15, and 22
         
         The CLD routines don't provide you with the routines to do this,
         but they do let you retrieve the values, and it isn't too tough to
         write your own parsing routines.  I can provide them to you if you
         wish.

         Surrounding the range with parenthesis allows you to treat
         the item as a list, which makes this task easier.
         
                                     Lawrence
                                         ~

 -----------------------------------------------------------------------------
 
       ARPA: LPZ@STC10.CTD.ORNL.GOV
             LPZ%OCU.DECNET@STC10.CTD.ORNL.GOV
        MFE: MACINTYRE@ORN
     BITNET: LPZ@ORNLSTC
 Bell-South: 615.576.0824
   US-Snail: Lawrence MacIntyre
             Martin Marietta Energy Systems
             Bldg 9201-5  MS 8
             P O Box Y
             Oak Ridge, TN  37831
------