История изменений
Исправление MKuznetsov, (текущая версия) :
Я попробую обьяснить. Мне нужно сначала прочитать файл. Я это делаю при помощи open read close. Затем я получаю переменную, в которой список строк. Нужно этот список распарсить, так чтобы остались строки (которые начинаются с букв rgb, потом цифрер и потом символ.) Ну и потом нужно получить эти строки в переменные, чтобы каждая строка соответствовала какой-то переменной. У меня затык на всех трех этапах.
set f [ open "файло" r ]
array set rgb {}
while { ! [ eof $f ] } {
set s [ string trim [ gets $f ] ]
if { $s == "" || [ string index $s 0 ] == "#" } {
# skip empty and comments
continue
}
set key [ lindex $s 0 ]
if { [ regexp -expanded {^rgb\d+$} $s ] } {
set rgb($key) [ lrange $s 1 end ]
}
}
close $f
parray rgb
Исправление MKuznetsov, :
Я попробую обьяснить. Мне нужно сначала прочитать файл. Я это делаю при помощи open read close. Затем я получаю переменную, в которой список строк. Нужно этот список распарсить, так чтобы остались строки (которые начинаются с букв rgb, потом цифрер и потом символ.) Ну и потом нужно получить эти строки в переменные, чтобы каждая строка соответствовала какой-то переменной. У меня затык на всех трех этапах.
set f [ open "файло" r ]
array set rgb {}
while { ! [ eof $f ] } {
set s [ string trim [ gets $f ] ]
if { $s == "" || [ string index $s 0 ] == "#" } {
# skip empty and comments
continue
}
set key [ lindex $s 0 ]
if { [ regexp -expanded {^rgb\d+$} ] $s} {
set rgb($key) [ lrange $s 1 end ]
}
}
close $f
parray rgb
Исходная версия MKuznetsov, :
Я попробую обьяснить. Мне нужно сначала прочитать файл. Я это делаю при помощи open read close. Затем я получаю переменную, в которой список строк. Нужно этот список распарсить, так чтобы остались строки (которые начинаются с букв rgb, потом цифрер и потом символ.) Ну и потом нужно получить эти строки в переменные, чтобы каждая строка соответствовала какой-то переменной. У меня затык на всех трех этапах.
set f [ open "файло" r ]
array set rgb {}
while { ! [ eof $f ] } {
set s [ string trim [ gets $f ] ]
if { $s == "" || [ string index $s 0 ] == "#" } {
# skip empty and comments
continue
}
set key [ lindex $s 0 ]
if { [ regexp -expanded {^rgb\d+$} ] } {
set rgb($key) [ lrange $s 1 end ]
}
}
close $f
parray rgb