Tcl-5. format 命令

Tcl-5. format 命令

format 命令和 C 语言中的 printf 和 sprintf 命令类似。它根据一组格式说明来格式化字符 串。此命令不会改变被操作字符串的内容。

[语法]:format spec value1 value2 …

spec 变元包含了格式说明关键词和附加文字。使用%来引入一个关键词后跟 0 个或者多 个修饰符,然后使用一个转换格式符结尾。

关键词的基本格式是“%aaaB”  :aaa 是修饰符,B 代表一种格式转换符。例如%f 用于将对 应位置的参数转化为浮点数。

valueX 是变元。对每个变元来讲,其关键词可多达 6 部分:

– 位置说明符; – 标志; – 字段宽度;-精度; – 长度; – 转换符。

转换符之外的关键词都可以看作修饰符。

1.1 位置说明符 i$表示从第 i 个变元取数值而不是根据通常的位置对应关系对应的变元。位置记 数从 1 开始。

#要取第 2 个变元值,即 5。位置说明符的格式为 2$,并用\来引用符号$: 

>set res [format "%2\$s" 1 5 9]

=>5

>puts $res =>5

set str [format "%3\$s %1\$s %2\$s" "are" "right" "You"]

=> You are right

>format "%8x" 20

=> 14 ;# 将 20 转换为十六进制数,8 位数据宽度,右对齐

                       

点击阅读全文

上一篇 2023年 6月 6日 am10:43
下一篇 2023年 6月 6日 am10:44