Tcl 取消引用:如何取消引用字符串中的变量
Tcl dereferencing: How to dereference a variable inside a string
我有以下情况:
% set a 20
20
% set in_word "Value of a is $a"
Value of a is $a
现在,我想通过对变量 in_word
.
进行操作来打印(或将此字符串设置为另一个变量),Value of a is 20
essay which is also linked in Tclers wik here 中介绍了类似的(可能是更简单的情况)取消引用。那里涵盖的案例是这种性质的:
% set x y
y
% set y 20
20
% set [set x]
20
%
这种情况与我的问题相似,因为我有一个字符串,其中包含一个变量,而不是一个直接变量。我不确定如何将这种情况下的想法应用到我的问题中。我尝试使用 eval
但我没有得到我想要的效果。
subst 命令就是您要找的:
puts [subst $in_word]
如果您在 "" 中放置任何内容,它会解释 $args。
% set a 20
20
% set in_word "Value of a is $a"
Value of a is 20
我有以下情况:
% set a 20
20
% set in_word "Value of a is $a"
Value of a is $a
现在,我想通过对变量 in_word
.
Value of a is 20
essay which is also linked in Tclers wik here 中介绍了类似的(可能是更简单的情况)取消引用。那里涵盖的案例是这种性质的:
% set x y
y
% set y 20
20
% set [set x]
20
%
这种情况与我的问题相似,因为我有一个字符串,其中包含一个变量,而不是一个直接变量。我不确定如何将这种情况下的想法应用到我的问题中。我尝试使用 eval
但我没有得到我想要的效果。
subst 命令就是您要找的:
puts [subst $in_word]
如果您在 "" 中放置任何内容,它会解释 $args。
% set a 20
20
% set in_word "Value of a is $a"
Value of a is 20