tcl - TCL lindex 从列表元素中删除引号
问题描述
我有一个列表,其中一些元素是字符串,我需要将它们括在引号中。
如果我遍历列表并将每个元素放到终端上,输出看起来是正确的。但是,如果我对包含在引号中的特定元素进行索引,则引号会消失。
示例代码:
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"
如何从列表中获取特定的索引元素以保留其引号?
解决方案
我的错,与分隔符混淆。我认为转义引号实际上给了我一个包含单个元素的列表。更新到这个:
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"
推荐阅读
- composer-php - 我可以将我的项目的 composer.json 文件放在不在根目录上吗?
- python - 使用 networkx 标记连接的组件
- javascript - 将多个子元素附加到元素
- java - What is the purpose of constructor references in Kotlin
- c++ - “不完整类型” - 尝试打开 ifstream 时出错
- javascript - 文本输入只需要一个数字或多个相同的数字
- hibernate - BasicExtractor problem SpringBoot Intellij vs Jar file
- docker - Specify Location of Docker Images, Containers & Volumes for each docker-compose.yml?
- r - 将数据框转换为命名向量
- laravel - 如何在 Azure 上运行 Laravel websockets?