TCL lindex从列表元素中删除引号

时间:2019-12-18 14:01:58

标签: tcl

我有一个列表,其中一些元素是字符串,需要将它们用引号引起来。

如果我遍历列表并将每个元素放入终端,则输出看起来正确。但是,如果我索引到用引号引起来的特定元素,则引号会消失。

示例代码:

set myList [list "BUILD_PROJ \"I have quotes\""]

foreach element $myList {
    puts [lindex $element 1]    
    puts [lindex $element]    
}

输出:

I have quotes
BUILD_PROJ "I have quotes"

如何从列表中获取特定的lindexed元素以保持其引号?

1 个答案:

答案 0 :(得分:0)

我不好,混入分隔符。我认为转义引号实际上是给我一个包含单个元素的列表。更新为:

set myList [list "BUILD_PROJ" "\"I have quotes\""]

puts $myList
puts [lindex $myList 0]
puts [lindex $myList 1]

现在输出是我期望的:

BUILD_PROJ {"I have quotes"}
BUILD_PROJ
"I have quotes"
相关问题