如何将列表转换为tcl中的字符串

时间:2010-06-14 09:31:12

标签: tcl

如何在Tcl中将列表转换为字符串?

6 个答案:

答案 0 :(得分:17)

你最想要的是join但是根据你想要做的事情,这可能没有必要。

anything in TCL is able to be treated as a string at anytime,因此您可以将列表用作字符串而不进行明确的转换

答案 1 :(得分:5)

如果您只想要内容,可以输入$ listvar,它会将内容写成字符串。

您可以将列表展平一个级别,或者使用join来插入一个分隔符,如上面的jk所示。

示例:

% set a { 1 2 3 4 { 5 6 { 7 8 9 } } 10 }
 1 2 3 4 { 5 6 { 7 8 9 } } 10 
% puts $a
 1 2 3 4 { 5 6 { 7 8 9 } } 10 
% join $a ","
1,2,3,4, 5 6 { 7 8 9 } ,10
% join $a
1 2 3 4  5 6 { 7 8 9 }  10

答案 2 :(得分:1)

set list {a b c d e f}
for {set i 0} {$i<[llength $list]} {incr i} {
    append string [lindex $list $i]
}
puts $string

答案 3 :(得分:1)

使用类来展平列表:

set list { 1 2 3 4 { 5 6 { 7 8 9 } } 10 }

package require struct::list
struct::list flatten -full $list

答案 4 :(得分:-1)

set a { 1 2 3 4 { 5 6 { 7 8 9 } } 10 }
set rstr [regexp -all -inline {\S+} $a]
puts $rstr

答案 5 :(得分:-6)

使用list命令。

http://wiki.tcl.tk/440

或者,请参阅“拆分”:http://wiki.tcl.tk/1499

split "comp.unix.misc"

返回“comp unix misc”