修剪Tcl String意外行为

时间:2016-05-27 08:13:08

标签: string indexing tcl trim

我目前使用TCL遇到意外行为。 我有一个像#34;替代[a-z]"并且我使用以下命令获取我的备用索引。

set stemp [ string trim $test "alternate \s"]

[b-z]的输出是[b-z],对于"交替a"但是我得到了#34; &#34 ;.为什么呢?

1 个答案:

答案 0 :(得分:2)

您所看到的行为完全符合记录。该命令通过从每一端修剪出在第二个参数中某处出现的任何连续字符序列来工作。无论第二个参数中的字符串是什么,它都只是用作一组字符,并且本身从不匹配第一个参数的前导或尾随子字符串。

E.g。

string trim foobar afro
# -> b

您可能需要::textutil::trim:该命令根据正则表达式进行修剪。

package require textutil

::textutil::trim foooofoooofoo foo
# -> oofoooo
::textutil::trim faouofeoiofyo f.o
# -> uofeoio

文档:packagestringtextutil