変数「a」が12345に設定されていると仮定します。
set a 12345
ここで、「a」の値と別の文字列9876を含む新しい変数「b」をどのように設定しますか
回避策は次のようなものです
set a "12345"
set u "9876"
set b $a$u
しかし、$u
を指定したくありません。代わりに、直接文字列を使用します。
できるよ:
set b ${a}9876
または、b
が空の文字列に設定されているか、定義されていない場合:
append b $a 9876
append
の呼び出しは、$a
は長い( append
doc を参照)。
他のオプションは、setコマンドを使用することです。セットaはaの値を与えるので、以下のようにそれを使用してbの値を設定できます。
セットb [セットa] 9876
または、format
を使用できます
set b [format %s%s $a $u]
Tcl 8.6から.2 以降、string cat
この問題を解決するために使用できます。
set b [string cat $a 9876]
直接文字列の意味がわかりません...必要かどうかはわかりません...ただし、12349876の値が必要な場合は、次のようにできます。
% set b [concat $a$u]
12349876
$ aまたは$ uを文字列の一部にしたい場合は、目的の変数の前にバックスラッシュ '\'を追加するだけです。
他のオプションは、以下のようなconcatコマンドを使用することです。
セットb [連結$ a\9876]