Tcl字符串转义

Rob*_*oby 2 string tcl

Heyhoo,

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

if { [string compare "[INTENSITY]" $line] == 0 } { }
Run Code Online (Sandbox Code Playgroud)

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

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

set data [split $file_data "\n"]
Run Code Online (Sandbox Code Playgroud)

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

希望你能再次帮助我.

evi*_*tto 8

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

if { [string compare {[INTENSITY]} $line] == 0 } { }
Run Code Online (Sandbox Code Playgroud)

在第二项上,split创建一个列表,而不是一个数组.索引到lindex:

set data [split $file_data "\n"]
puts [lindex $data 1]
Run Code Online (Sandbox Code Playgroud)

tcl信息的最佳网站是Tcler的Wiki,网址http://wiki.tcl.tk/