tcl - 如何从tcl中的字符串中剪切子字符串

标签 tcl

我有像NYMEX UTBPI这样的字符串。在这里,我想获取NYMEX和UTBPI中间的空白索引,然后从该索引到最后一个索引,我要剪切子字符串。在这种情况下,我的子字符串将为UTBPI我在下面使用

set part1 [substr $line [string index  $line " "] [string index  $line end-1]]

我遇到错误了。
wrong # args: should be "string index string charIndex"
    while executing
"string index  $line  "
    ("foreach" body line 2)
    invoked from within
"foreach line $pollerName {
set part1 [substr $line [string index  $line  ] [string index  $line end-1]]
puts $part1
puts $line
}"
    (file "Config.tcl" line 9)

您能给我一个关于如何进行其他字符串操作的想法吗?任何对此的良好链接。

最佳答案

我只需要使用string range并将其传递给空格索引即可(您可以先使用字符串先使用或其他方式找到该索引)。

% set s "NYMEX UTBPI"
NYMEX UTBPI
% string range $s 6 end
UTBPI

或先使用字符串来动态查找空白:
% set output [string range $s [expr {[string first " " $s] + 1}] end]
UTBPI

关于tcl - 如何从tcl中的字符串中剪切子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15923728/

相关文章:

c++ - Swig + tcl + c++(内存管理)

linux - 使 proc 可用于所有模块文件?

tcl - 验证 TK/Tcl 中的条目

linux - rlwrap 在后台运行时挂起作业

package - 关于TCL包的问题

c++ - 需要从 C++ 中的另一个文件调用 tcl proc

tcl - 期望:从输出中提取特定字符串

tcl - 从命令行获取TCL的版本?

python - 将 TCL 脚本的输出记录到 Tkinter 文本小部件中

sql-server - 在 Win x64 上通过 MS SQL 使用 Tcl 和 tdbc