我試圖用TCL中的regsub替換一個字符串與數組中的值。如何使用正則表達式捕獲組作爲數組索引?
array set myArray "
one 1
two 2
"
set myString "\[%one%\],\[%two%\]"
regsub -all "\[%(.+?)%\]" $myString "$myArray(\\1)" newString
我的目標是一個字符串轉換從 「[%的一種%],[%2%]」,以 「1,2」。問題是捕獲組索引未解決。我收到以下錯誤:
can't read "myArray(\1)": no such element in array
while executing
"regsub -all "\[%(.+?)%\]" $myString "$myArray(\\1)" newString"
像冠軍!謝謝! – BakerBug