TCL拆分一个字符串

TCL split a string

我是 TCL 的新手,正在编写一个脚本,试图找出一种使用特定字符拆分字符串的方法。例如,我有一个像 "name1,name2,name3" 这样的字符串,然后我想要一个 for 循环,它会一次遍历每个名​​称和 运行 一个命令。 for 循环是否可以拆分字符串并对其进行某些处理,或者我是否必须先拆分字符串(每个“,”所在的位置)然后再进行 for 循环?

我看到了范围选项,但我不确定名称可能有多长

非常简单:

set names "name1,name2,name3" 

foreach name [split $names ,] {
    puts $name
}

参考:
http://tcl.tk/man/tcl8.6/TclCmd/split.htm
http://tcl.tk/man/tcl8.6/TclCmd/foreach.htm

特别注意 foreach 的提要,其中第二个参数是 list

foreach varname list body

split的描述:

Returns a list ...