1
我在文件中用逗號分隔了幾行,我想將逗號分隔值添加到列表中。我該怎麼做?分割命令給我一個列表。但我想維護數組來保存這些值。如何在tcl中拆分逗號分隔值
For example : Jack,John,Ted
我想創建一個數組來保存這些值。我怎樣才能做到這一點?
我在文件中用逗號分隔了幾行,我想將逗號分隔值添加到列表中。我該怎麼做?分割命令給我一個列表。但我想維護數組來保存這些值。如何在tcl中拆分逗號分隔值
For example : Jack,John,Ted
我想創建一個數組來保存這些值。我怎樣才能做到這一點?
最有可能的一個Tcl列表實際上是您需要的正確數據結構。 Tcl的一個常見誤解是它的list
數據結構就像一個傳統的鏈表數據結構,其所有含義(如O(n)訪問時間)都是如此。事實上,Tcl list
實際上是一個向量,具有O(1)訪問元素的功能,以及通過foreach
命令進行的有效枚舉。相比之下,Tcl的array
實際上是一個哈希表,它可能是您想要的 - 但如果您只需要遍歷元素或有效訪問特定元素,那麼Tcl list
就是完美的。
要通過元素迭代,使用foreach
,如所提到:
foreach name $values {
puts $name
}
要訪問一個特定的元素,可以使用lindex
。請記住,列表是0索引,所以索引2是該列表中的第三元素:
puts [lindex $values 2]
如果它確實是CSV數據,可以考慮使用[CSV包(http://tcllib.sourceforge.net/ doc/csv.html)在tcllib中。它爲你處理了一大堆棘手的邊緣情況,即'split'不會。 –