|
楼主 |
发表于 2020-4-14 16:30
|
显示全部楼层
2.list串行数据型态
! W% {9 U& Y f8 j2 [list这个概念在TCL中是用来表示集合的。TCL中list是由一堆元素组成的有序集合,list可以嵌套定义,list每个元素可以是任意字符串,也可以是list。TCL提供了很多基本命令对list进行操作:
; i r, H$ h6 a5 g$ m(1)list指令6 `& a# \* }+ Q+ _2 Q6 @
语法:list [ value value...]:这个命令生成一个list,list的元素就是所有的value。
2 a, b8 N& r0 p' ~$ @(2)concat指令! W2 i- i/ } c J9 i5 U
语法:concat list [list...]:这个命令把多个list合成一个list。
9 M* A4 m7 m; s3 H$ x2 [4 Q% T(3)llength指令1 \& F5 x- X5 J- i& o8 |
语法:llength list:返回list的元素个数。9 }8 |- [' K* R+ Y* G
(4)lindex指令: r4 J+ T/ g% y* ]$ R C2 c
语法:lindex list index:返回list的第index个(0-based)元素。
2 k d1 v$ e1 S Y7 p# d. I(5)lrange指令6 X1 Z( \9 W3 Y1 x0 Q8 W
语法:lrange list first last:返回list的第first (0-based)到第last (0-based)元素组成的串,如果last的值是end,就是从第first个直到串的最后。- d8 B. o8 j) b' X- \$ ~0 O
(6)linsert指令3 E. C( z9 F6 b
语法:linsert list index value [value...?]:返回一个新串,新串是把所有的value参数值插入list的第index个(0-based)元素之前得到。
( f# w# C4 ?) I2 _0 Q(7)lappend指令* W# U; Z% o: l, b
语法:lappend varname value [value...?]:把每个value的值作为一个元素附加到变量varname后面,并返回变量的新值,如果varname不存在,就生成这个变量。( ~0 A2 ]0 h* G! Q; l+ t# R1 {
6 O$ R7 s8 d5 O' Z1 A, M7 J4 L( r
(12)split指令
% M1 ~8 ?; m9 u6 A3 X4 P语法:split string [splitChars]:把字符串string按分隔符splitChars分成一个个单词,返回由这些单词组成的串。如果splitChars 是一个空字符{},string被按字符分开。如果splitChars没有给出,以空格为分隔符。9 P( c, Q. ?) u( R5 L, k
3.Array 数组数据型态$ T `, Q( l; S$ L9 e. e$ H
在TCL中的Array数组是以字符串作为索引数组,在 TCL 语言中举足轻重,许多数据结构都是以数组为基础设计而成。其基本指令如下:
* Z5 e$ \6 Q6 c6 v- Y$ Z5 yarray exists arr:判断 arr 是否为一个数组。传回 1 代表是数组。, a1 {* }7 I" r$ U( f, x
array get arr ?pattern?:将 arr 的索引及元素值交错建立成一个 list 后传回。
: V' V I. \' u3 l/ jarray names arr ?mode? ?pattern?:传回 arr 的索引list。: s( I* V& y' d/ @. R& l7 Z. _/ J
array set arr list:根据list的内容建构一个数组。
~1 j& G9 O) r! X" iarray size arr:传回 arr 的大小。
, ]3 Q* g. h( ]3 z5 d# h' aarray unset arr ?pattern?:释放符合样式的数组元素。如果没有指定样式,则会释放整个数组。; G0 I: r/ ]8 @$ q0 |
array startsearch arr:起始数组的搜寻功能,并传回一个标记(token id)。! K3 i' [) Z7 a+ K5 S
array nextelement arr id:在数组token-id所标记的搜寻中,将下一个元素的索引传回,没有元素时传回空字符串。
( f4 n5 G' X3 p" p \' n3 A, @array anymore arr id:检查数组token-id所标记的搜寻中,是否还有元素可取用,还有元素传回1,否则传回0。
# _9 P: g% L4 B/ Zarray donesearch arr id:结束 id 所识别的搜寻。
! f/ x% }( I8 h; Z! S& ^array statistics arr:传回arr数组杂凑表(hash table)的统计表。% y, J; Y; a7 q$ t8 F! H9 y
|
|