TcL - 列表编辑



我有这个来自有限元分析程序的数据列表。我的问题是,FE 程序中写入数据的函数是通过将所有信息放在同一行上来实现的。 我最终得到一个长度为 1 的"列表",同一行有 10 000 个条目。我希望能够在列表中的每个数据之间放置某种"输入"。每个数据都有相同的长度(#caracter)。列表是这样的:4.81941e-010 4.89941e-010 3.81941e-010 1.81341e-010 ...等(在同一行上)我想做这样的事情:

for {set i 1} {$i<=$length in list} {incr i 1} {
count 12 caracter then do a enter
}

感谢您的帮助!

怎么样

join $list n

这是基于数字之间似乎有一个空格字符的事实,这意味着该字符串也是 10000 个项目的列表。

否则,您可以将子字符串放在如下所示的列表中:

set list {}
for {set i 0} {$i < [string length $str]} {incr i 13} {
    lappend list [string trimright [string range $str $i $i+12]]
}

文档:for、incr、join、lappend、set、string

除了彼得的回答,你可以选择用新行替换空格:

set list [string map {" " "n"} $list]

最新更新