Как преобразовать известный массив в строку в TCL? массив может иметь такие значения, как root_user_appversion 10.1.3.20
и/или я просто хочу извлечь из него последние значения, которые 10.1.3.20
.Array to string в TCL
ответ
Вы можете преобразовать массив в списке:
set my_list [array get my_array]
puts "last element: [lindex $my_list [expr {[llength $my_list] -1}] ]"
После этого, вы можете легко конвертировать список в строке с join
:
set my_string [join $my_list " "]
'lindex $ my_list end' более идиоматичен. –
Всегда [привязывайте свои expr-essions] (http://wiki.tcl.tk/10225) –
Другая проблема заключается в том, что на самом деле это не решает проблему, она просто строит содержимое массива. –
Я думаю, что вы хотите
join [dict values [array get the_array]]
Который берет список переменных ключей/значений, отфильтровывает значения и присоединяет их в строку.
Обратите внимание, что значения с пробелами будут искажены: в этом случае вам будет лучше с dict values [array get the_array]
.
По крайней мере показать свои усилия, что вы сделали. –