この問題は、SolarisとLinuxの両方で、tclバージョン8.3/8.4で発生しました。
次のコードを参照してください。
#!/usr/bin/tclsh
set pattern "this is * and *"
set str "this is tcl and c++"
switch -glob $str {
$pattern {
puts "matched pattern"
}
"this is * and *" {
puts "matched plain text"
}
default {
puts "matched none"
}
}
結果は「一致したプレーンテキスト」です。$ patternと一致するはずですが、これはスイッチの誤った使用法ですか、それとも-globオプションに正しいパターンを指定していませんか?
誰かがいくつかのアイデアを与えてください、そしてあなたがそれをスイッチと変数で実行するようにコードを修正する方法を教えることができればそれはより良いです。
ありがとう!XM