Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 将字符串转换为嵌套的tcl列表_String_List_Tcl - Fatal编程技术网

String 将字符串转换为嵌套的tcl列表

String 将字符串转换为嵌套的tcl列表,string,list,tcl,String,List,Tcl,请参阅下面的代码: > foreach a {k l { jo k } {jo i } k } { puts $a} k l jo k jo i k 问题是,如果我得到一个具有列表字符串表示形式的字符串,会发生什么情况: > foreach a "{k l { jo k } {jo i } k }" { puts $a} k l { jo k } {jo i } k 如何使用subst和eval将字符串{kl{jo k}{jo I}k}转换为一个列表,该列表类似于:{kl{jo

请参阅下面的代码:

> foreach a {k l { jo k } {jo i } k } { puts $a}
k
l
jo k
jo i
k
问题是,如果我得到一个具有列表字符串表示形式的字符串,会发生什么情况:

> foreach a "{k l { jo k } {jo i } k }" { puts $a}
k l { jo k } {jo i } k

如何使用subst和eval将字符串
{kl{jo k}{jo I}k}
转换为一个列表,该列表类似于:
{kl{jo k}{jo I}k}

使用subst和eval,但不起作用。
谢谢。

该字符串看起来像是在保存一个列表,所以让我们试试
lindex

% foreach a [lindex "{k l { jo k } {jo i } k }" 0] { puts $a}
k
l
 jo k 
jo i 
k

这个字符串看起来像是在保存一个列表,所以让我们试试
lindex

% foreach a [lindex "{k l { jo k } {jo i } k }" 0] { puts $a}
k
l
 jo k 
jo i 
k
作品也包括:

% foreach a "{k l { jo k } {jo i } k }" { puts $a}
k l { jo k } {jo i } k 
% foreach a {*}"{k l { jo k } {jo i } k }" { puts $a}
k
l
 jo k 
jo i 
k
作品也包括:

% foreach a "{k l { jo k } {jo i } k }" { puts $a}
k l { jo k } {jo i } k 
% foreach a {*}"{k l { jo k } {jo i } k }" { puts $a}
k
l
 jo k 
jo i 
k