2014-12-30 307 views
0

我剛剛使用Tcl,並試圖使用Tcl從字符串中刪除方括號。使用tcl從字符串中刪除方括號

set f "abc [def]" 
set bracket1 {[} 
set bracket2 {]} 
    regsub -all "($bracket1) ($bracket2)" $f "" g 
    puts $g 
+2

問題是什麼? – rapvelopment

+1

[歡迎使用Stack Overflow!](https://stackoverflow.com/help/how-to-ask)請更清楚地說明問題;是你的片段試圖刪除括號?它做什麼,它應該做什麼? – Ruud

回答

2

從字符串中刪除方括號,它更容易(和更快)使用string map

set g [string map {{[} "" {]} ""} $f] 

可以使用regsub,但由於[]重新元字符 RE字符集元字符,它可能會比較尷尬:

regsub -all {[][]} $f "" g 
# or 
set g [regsub -all {[][]} $f ""] 
+0

把角色刪除變量只會讓事情變得更難。 –

+0

太棒了!有用。謝謝! – canislupus

相關問題