以下のコードを参考にして、例としてstring toupper
を選択的に使用するbackrefeenceでregsubを使用しようとしています。私は私が期待しているものを得ていない。
以下の簡単な例を参照してください(私はstring toupper $string 0 0
を使用することができますが、これは原理を示すためのものです)。見ることができるようにtcl stringコマンドはregexpの逆参照で動作しません
> puts [ regsub {^(.)} "min" "s\\1" ]
smin
> puts [ regsub {^(.)} "min" [ string toupper "\\1" ] ]
min
、文字列TOUPPERは動作しません。後方参照に適用されますが、backrefernceは二重引用符の操作に使用することができます。
私はTCL版を使用しています。 8.6
...そして、それは仕事ができる方法は、コマンドが取得toupper' '文字列として、ありません'regsub'コマンドの前に実行されます。 –
https://ideone.com/EjXgjeを参照してください –