如何用TCL中的单个逗号替换多个空格

use*_*871 3 tcl

请告诉我用逗号替换多个空格的方法,例如输入字符串

set string "boy      cat dog            girl     man"
Run Code Online (Sandbox Code Playgroud)

字符串之间可以有多个空格例子8男孩和猫之间,4个狗和女孩之间

我想要它 boy,cat,dog,girl,man

Mar*_*nte 7

这很简单:你只需要使用regsub,它会根据正则表达式执行替换.

set string "boy     cat   dog  girls man"
regsub -all {\s+} $string ,
Run Code Online (Sandbox Code Playgroud)

你明白了

boy,cat,dog,girls,man
Run Code Online (Sandbox Code Playgroud)

\s一个单一的空间,所述匹配+装置的一个或多个先前的原子的,因此结合使一个或多个空格.