我正在使用regsub替换(T | Z)空格
set date(1,2) "2012-09-14T00:00:00Z"
regsub -all {(T|Z)} $date(1,2) " " date(1,2)
puts $date(1,2)
但是当我使用
时regsub -all {(T|Z)} $date(1,2) "\s" date(1,2)
它用\ s替换T | Z。
如何将单个空格字符映射到“\ s”以使代码看起来清晰
答案 0 :(得分:2)
将"\s"
替换为" "
\s
:根据具体情况,可能意味着很多事情。在正则表达式的上下文中,如果正则表达式解释器知道它,它应该在unix类型程序上表示“任何空格字符(空格或制表符,或者当前语言环境中的空格和LC_LANG的其他任何其他内容) ”。所以它会匹配其中任何一个。然而,在“替换”方面,不知道哪个是需要的(空格?标签?另一个?)因此它不能在那一侧被解释,并且tcl将其“原样”。