我想在 tcl 中取一个表达式并将其转换_
为<
,>
如果它们围绕一个数字。一些例子:
bla_bla_4_
->bla_bla<4>
bla_bla_4
->bla_bla_4
bla_4_
->bla<4>
我该怎么做?我在regsub 的手册中找不到它。
我想在 tcl 中取一个表达式并将其转换_
为<
,>
如果它们围绕一个数字。一些例子:
bla_bla_4_
->bla_bla<4>
bla_bla_4
->bla_bla_4
bla_4_
->bla<4>
我该怎么做?我在regsub 的手册中找不到它。
You need the right pattern.
set parts {"bla_bla_4_" "bla_bla_4" "bla_4_"}
foreach part $parts {
regsub -all {_(\d+)_} $part {<\1>} result
puts "$part -> $result"
}
This returns
bla_bla_4_ -> bla_bla<4>
bla_bla_4 -> bla_bla_4
bla_4_ -> bla<4>
Should work:
regsub -all {_(\d+)_} $Line "<\\1>" Line