Tcl string escape - PullRequest
       6

Tcl string escape

2 голосов
/ 03 августа 2011

Heyhoo,

теперь мне нужно сравнить строку типа "INTENSITY" с $ line.Банкомат, я хочу сделать это как

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

, но я думаю, что есть проблема с "[" и "]".Но как я мог избежать этого?Я не смог найти хорошую книгу или действительно хороший веб-сайт в Интернете.

Следующий вопрос: я создал массив типа

set data [split $file_data "\n"]

почему я могу сказать array stat $data ???

Надеюсь, вы сможете мне снова помочь.

1 Ответ

8 голосов
/ 03 августа 2011

Для первого элемента используйте {} в качестве разделителей строк, чтобы предотвратить подстановку команд (что происходит с [] в строке в двойных кавычках)

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

На втором элементе split создает список, а не массив. Индексируйте в это с lindex:

set data [split $file_data "\n"]
puts [lindex $data 1]

Лучшим веб-сайтом для информации tcl является Wiki Tcler на http://wiki.tcl.tk/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...