This command, a part of
tclx is documented thusly within the package:
-
- ctoken strvar separators
Parse a token out of a character string. The string to parse is contained in the variable named
strvar. The string
separators contains all of the valid separator characters for tokens in the string. All leading separators are skipped and the first token is returned. The variable
strvar will be modified to contain the remainder of the string following the token.
This command does not work with binary data.
Compare with
split and note that they are
not equivalent.
Can anyone provide me an example of how this works?
50 % set s abc-def=ghi/jkl:mno(pqr)stu&vwx@yz
abc-def=ghi/jkl:mno(pqr)stu&vwx@yz
51 % set sep -:()@
-:()@
52 % ctoken s $sep
abc
53 % set s
-def=ghi/jkl:mno(pqr)stu&vwx@yz
54 % ctoken s $sep
def=ghi/jkl
55 % set s
:mno(pqr)stu&vwx@yz
56 % ctoken s $sep
mno
57 % set s
(pqr)stu&vwx@yz
58 % ctoken s $sep
pqr
59 % set s
)stu&vwx@yz
60 % ctoken s $sep
stu&vwx
61 % set s
@yz
62 % ctoken s $sep
yz
63 % set s
64 % ctoken s $sep