String 如何通过一对闭合和开放的curely支架进行拆分
我有一个字符串,比如:String 如何通过一对闭合和开放的curely支架进行拆分,string,tcl,String,Tcl,我有一个字符串,比如: set a "alfa beta gama} {alfa} {gama" 我试着做: set b [split $a "} {"] 我希望结果是列表b,其中包含: element 1 = alfa beta gama element 2 = alfa element 3 = gama 但是,当我尝试此操作时,我没有得到期望的结果,因为tcl试图使用“进行拆分,split命令将一组字符作为其可选的第二个参数(为了方便起见,将其表示为字符串)。进行您所追求的那种拆分的选
set a "alfa beta gama} {alfa} {gama"
我试着做:
set b [split $a "} {"]
我希望结果是列表b,其中包含:
element 1 = alfa beta gama
element 2 = alfa
element 3 = gama
但是,当我尝试此操作时,我没有得到期望的结果,因为tcl试图使用“进行拆分,
split
命令将一组字符作为其可选的第二个参数(为了方便起见,将其表示为字符串)。进行您所追求的那种拆分的选项实际上是:
textutil::split
包
package require textutil::split
set pieces [textutil::split::splitx $yourString "***=\} \{"]
set pieces [split [string map [list "\} \{" "\uffff"] $yourString] "\uffff"]
split
命令将一组字符作为可选的第二个参数(为了方便起见,将其表示为字符串)。进行您所追求的那种拆分的选项实际上是:
textutil::split
包
package require textutil::split
set pieces [textutil::split::splitx $yourString "***=\} \{"]
set pieces [split [string map [list "\} \{" "\uffff"] $yourString] "\uffff"]
如果这是你的真实情况,为什么你不通过像这样附加开始和结束的大括号来制作一个完整的列表呢
set a "alfa beta gama} {alfa} {gama"
set b "\{$a\}"
然后,您可以使用
lindex
引用这三个项目中的任何一个,如果这是您的具体情况,为什么不通过像这样附加开始和结束大括号来制作一个完整的列表呢
set a "alfa beta gama} {alfa} {gama"
set b "\{$a\}"
然后,您可以使用lindex
引用这三个项目中的任何一个,因为您已经这样做了
“设置b”\{$a\}
”
变量b的值为
“{alfa beta gama}{alfa}{gama}”
现在
lindex$b 0
={alfa beta gama}
lindex$b1
={alfa}
lindex$b2
={gama}既然你这么做了
“设置b”\{$a\}
”
变量b的值为
“{alfa beta gama}{alfa}{gama}”
现在
lindex$b 0
={alfa beta gama}
lindex$b1
={alfa}
lindex$b 2
={gama}其中一些高Unicode字符从未在实际文本中出现,因此非常适合拆分委托。一些高Unicode字符从未在实际文本中出现,因此非常适合拆分委托。