首页 > 解决方案 > 从字符串中删除双引号

问题描述

我有这样的一行:

{"a/b"} {"c/d"} {"e/f"}

我想要输出为:

a/b c/d e/f

基本上我想从现有行中删除所有 " 和 {} 。

在TCL应该怎么做?

我试过使用string trim但没有帮助。

set z {{"a/b"} {"c/d"} {"e/f"}}
set trimmed_z [string trim $z "\"\"\}\{"]

它给

a/b"} {"c/d"} {"e/f

标签: tcltrim

解决方案


这看起来像一个 Tcl 列表,其中内大括号是因为"元素中的字符。因此,我们需要做的就是string trim对每个元素应用一个剥离命令(一个相当简单的);lmap使这很容易:

set yourData {{"a/b"} {"c/d"} {"e/f"}}
set yourCleanData [lmap elem $yourData {
    string trim $elem \"
}]

推荐阅读