set some_string "Name/is/ComplexSTRUCTUre"
この文字列を次のように変換します。
some_string = "Name/is/ComplexSTR.CTUre"
つまり、最初"U"
に"."
set some_string "Name/is/ComplexSTRUCTUre"
この文字列を次のように変換します。
some_string = "Name/is/ComplexSTR.CTUre"
つまり、最初"U"
に"."
これを試して、
set replaced_string [regsub "U" $some_string "."]
puts $replaced_string
別のオプション、
set pos [string first "U" $some_string]
set replaced_string [string replace $some_string $pos $pos "."]
puts $replaced_string
ここであなたの"Name/is"
部分は何も含んではいけません"U"
詳細については、tcl 文字列の置換を参照してください。
regsub
プレーンな文字列に対して を使用するのはやり過ぎです。部分文字列のセットを別のセットに単に置き換えたい場合string map
は、次のようになります。
set s "Name/is/ComplexSTRUCTUre"
set s [string map {U .} $s]
ただし、これにより、質問のタイトルが示すように、すべてのUs がドットに置き換えられます。
ただし、質問のテキストが示すように、最初のUのみを置き換えたい場合は、AxT_8041 の 2 番目のオプションが最適です。