home *** CD-ROM | disk | FTP | other *** search
- /*
- ** AREXX $VER: NameStruc V1.0 (13.09.1992)
- **
- ** This ARexx script accepts a filename and returns three lengthes (not
- ** strings, to avoid problems with embedded spaces) corresponding to the
- ** main parts of this filename.
- **
- ** Example: RAM:foo/bar/nasty.tar.Z
- ** ^ ^ ^
- ** volume : 4 (RAM:)
- ** subdirlen: 8 (foo/bar/) NOTE : The trailing slash is included.
- ** baselen : 9 (nasty.tar) NOTE : if no extension, whole length.
- */
- Parse Arg FULLNAME /* FULLNAME = strip(FULLNAME,'L') */
-
- VOLUME = Index(FULLNAME,":")
- SUBDIRLEN = LastPos("/",SubStr(FULLNAME,1+VOLUME))
- FILEONLY = SubStr(FULLNAME,VOLUME+1+SUBDIRLEN)
- BASELEN = LastPos(".",FILEONLY)
-
- If 0 = BASELEN Then
- BASELEN = Length(FILEONLY)
- Else
- BASELEN = BASELEN - 1
-
- Return VOLUME' 'SUBDIRLEN' 'BASELEN
-