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

发布于 2024-09-05 17:50:47 字数 26 浏览 4 评论 0原文

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

How do I convert a list into string in Tcl?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

枉心 2024-09-12 17:50:47

您最有可能想要的是加入,但是根据您想要执行的操作,这可能不是必需的。

TCL 中的任何内容都可以随时被视为字符串,因此您可以只使用您的列表为字符串,无需显式转换

most likely what you want is join however depending on what you are trying to do this may not be necessary.

anything in TCL is able to be treated as a string at anytime, consequently you may be able to just use your list as a string without explict conversion

仙女 2024-09-12 17:50:47

如果你只想要内容,你可以放入 $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

If you just want the contents, you can puts $listvar and it will write out the contents as a string.

You can flatten the list by one level or insert a separator character by using join, as jk answered above.

Example:

% 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
我们只是彼此的过ke 2024-09-12 17:50:47
set list {a b c d e f}
for {set i 0} {$i<[llength $list]} {incr i} {
    append string [lindex $list $i]
}
puts $string
set list {a b c d e f}
for {set i 0} {$i<[llength $list]} {incr i} {
    append string [lindex $list $i]
}
puts $string
以可爱出名 2024-09-12 17:50:47

要使用类展平列表:

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

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

To flatten a list using classes:

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

package require struct::list
struct::list flatten -full $list
睫毛溺水了 2024-09-12 17:50:47

这里:

% join {abc} " and "

a and b and c

% join {abc} ""

abc

(来源: https://wiki.tcl-lang.org/page/join)

Here:

% join {a b c} " and "

a and b and c

% join {a b c} ""

abc

(source: https://wiki.tcl-lang.org/page/join)

花落人断肠 2024-09-12 17:50:47
set a { 1 2 3 4 { 5 6 { 7 8 9 } } 10 }
set rstr [regexp -all -inline {\S+} $a]
puts $rstr
set a { 1 2 3 4 { 5 6 { 7 8 9 } } 10 }
set rstr [regexp -all -inline {\S+} $a]
puts $rstr
走走停停 2024-09-12 17:50:47

使用列表命令。

http://wiki.tcl.tk/440

或者,参见“split”:http://wiki.tcl.tk/1499

split "comp.unix.misc"

返回“comp unix Misc”

Use the list command.

http://wiki.tcl.tk/440

Alternatively, see "split": http://wiki.tcl.tk/1499

split "comp.unix.misc"

returns "comp unix misc"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文