Tcl字符串转义

时间:2011-08-03 07:37:10

标签: string tcl

Heyhoo,

现在我需要将像“[INTENSITY]”这样的字符串与$ line进行比较。 ATM我想这样做

if { [string compare "[INTENSITY]" $line] == 0 } { }

但我认为“[”和“]”存在问题。但我怎么能逃脱呢? 我无法在网上找到一本好书或一个非常好的网站。

下一个问题是我创建了一个类似

的数组
set data [split $file_data "\n"]

为什么我要说array stat $data ???

希望你能再次帮助我。

1 个答案:

答案 0 :(得分:8)

对于第一个项目,使用{}作为字符串分隔符来防止命令替换(这是双引号字符串中[]所发生的情况)

if { [string compare {[INTENSITY]} $line] == 0 } { }

在第二项上,split创建一个列表,而不是数组。使用lindex

进行索引
set data [split $file_data "\n"]
puts [lindex $data 1]

tcl信息的最佳网站是http://wiki.tcl.tk/

的Tcler Wiki