|
楼主 |
发表于 2020-4-14 16:30
|
显示全部楼层
2.list串行数据型态8 ~/ H- U6 k( D! F3 f, j5 b8 H
list这个概念在TCL中是用来表示集合的。TCL中list是由一堆元素组成的有序集合,list可以嵌套定义,list每个元素可以是任意字符串,也可以是list。TCL提供了很多基本命令对list进行操作:3 l, x$ [" F. q7 e$ f& _
(1)list指令
, P. F/ r! u4 w2 T, ^语法:list [ value value...]:这个命令生成一个list,list的元素就是所有的value。
, |6 X, M. w* P( P: R+ C) P7 w(2)concat指令: e% u9 ^ u @
语法:concat list [list...]:这个命令把多个list合成一个list。
! ~2 @- A/ X9 p1 `- b( F(3)llength指令
8 ?2 N9 L) J9 L" b语法:llength list:返回list的元素个数。
2 M" H2 {, N& K( {, s. A V(4)lindex指令
( K* J7 f8 a$ E语法:lindex list index:返回list的第index个(0-based)元素。
& V& R* C( l2 t% o(5)lrange指令" ^- p+ g3 R" D$ ]
语法:lrange list first last:返回list的第first (0-based)到第last (0-based)元素组成的串,如果last的值是end,就是从第first个直到串的最后。; [( B1 B3 g% E
(6)linsert指令
, n$ V( Z/ \. ~2 ]语法:linsert list index value [value...?]:返回一个新串,新串是把所有的value参数值插入list的第index个(0-based)元素之前得到。
% A8 ?8 Y. a( d. ]$ s(7)lappend指令% @2 o9 e8 [" e( h- @
语法:lappend varname value [value...?]:把每个value的值作为一个元素附加到变量varname后面,并返回变量的新值,如果varname不存在,就生成这个变量。6 T! v' u1 c# w0 M& l) u9 X
4 D7 f. w3 c: j- @2 O2 u4 q; ~. D& G$ ?: O1 p9 ^6 f
(12)split指令
% |% C; D% _' \语法:split string [splitChars]:把字符串string按分隔符splitChars分成一个个单词,返回由这些单词组成的串。如果splitChars 是一个空字符{},string被按字符分开。如果splitChars没有给出,以空格为分隔符。
7 f3 m3 u* |) ^) [9 B; F" d) r0 o/ D3.Array 数组数据型态4 T% K( E& \, x* H; f4 y; X" B3 D
在TCL中的Array数组是以字符串作为索引数组,在 TCL 语言中举足轻重,许多数据结构都是以数组为基础设计而成。其基本指令如下: R% W( w$ s8 y3 T
array exists arr:判断 arr 是否为一个数组。传回 1 代表是数组。- x5 E( U: ]2 `& a Q8 u0 @4 S
array get arr ?pattern?:将 arr 的索引及元素值交错建立成一个 list 后传回。
8 E% O/ |1 S% _ l; A; Warray names arr ?mode? ?pattern?:传回 arr 的索引list。" u' [ i+ ` J/ z0 g9 H' o
array set arr list:根据list的内容建构一个数组。
9 f q1 {5 y+ r& Garray size arr:传回 arr 的大小。
# v/ v% y" ^, x5 A% earray unset arr ?pattern?:释放符合样式的数组元素。如果没有指定样式,则会释放整个数组。' l* E& A. b; I
array startsearch arr:起始数组的搜寻功能,并传回一个标记(token id)。
) q0 z9 h, |0 }, P& e' O" O" }array nextelement arr id:在数组token-id所标记的搜寻中,将下一个元素的索引传回,没有元素时传回空字符串。9 z/ w/ w- D7 k& K& n- h: ?& I
array anymore arr id:检查数组token-id所标记的搜寻中,是否还有元素可取用,还有元素传回1,否则传回0。
" _# c1 m N5 oarray donesearch arr id:结束 id 所识别的搜寻。
- n' M, j6 i' c3 e; o/ l' marray statistics arr:传回arr数组杂凑表(hash table)的统计表。
, D4 S% K/ T5 z4 `; S |
|