一 入門書籍(TCL/Tk入門經典)
二 語法規則
刪除檔案
若要刪除多個.V檔案,需要以下步驟
(1)glob *v
可以用來查找.v檔案
(2)file delete [glob *v]
刪除所有.v檔案(若不只一個檔案會失敗,
因為此指令不會自動根據換行或空白分段)
(3)file delete {*}[glob *v]
若以{*}
為開頭,其後接著方空白符
號,Tcl會移除開頭的{*}
,會以空格為間隔去把文件名解析出來(所以即
使是多檔案也可以刪除成功)語法之引用
TCL提供一些方法,阻止解析器對$和分號等特殊字符進行特殊處理,這些稱
之為方法稱為引用。常用的引用包含反斜槓(),雙引號(""),大括號({})
反斜槓()會阻止$的替換,接$解析成字符$,雙引號又稱為若引用,大括號
為強引用
弱引用(""):不可以嵌套
強引用({}):可以嵌套(在for中使用),會去除掉所有特殊字符的特殊解釋
在寫腳本時若指令太長,會用反斜槓(\)來作為區分,但是要記得反斜槓(\) 後面不能有空格
三種匹配
(1)EXACT:完全相同,嚴格匹配
(2)GLOB(通配)
(3)正則表達示
4.變量
(1)無須定義,直接使用set創建,unset移除,變量包含名和值
(2)使用$去調用
(3)區分大小寫
(4)變量名和值可以由任意字符組成
(5)變量類型 string,list,directionary,synopsis裡面專門的collection
(6)變量存儲類型分為字符串表達形式和內部表達形式(整數,實數,名稱,列表,及TCL腳本)
(7)如果你要把某個簡單的變量當字符串處理看待,可以使用string命令提供的功能,其語法為: string option arg? arg...?
sting match ?-nocase?Patten string
如果匹配到string,返回1,否則返回0;如果有-nocase參數,則不區分大小寫,其使用的是glob
string equal ?-nocase? ?-length int ? string1 string2
如果exact相同,返回1,否則返回0
string length string
string index string charIndex
(index都是從0開始算)
整數n:第n個字符
end: 最後一個字符
end-整數n(不能有空格):倒數第n個
string range string first last
string replace string first last ?newstring?
string map ?-nocase? mapping string
string trim string ?chars?
(以string trim powerpo wpo從兩端開始,如果字符示w或是p或是o,則裁掉,這裡是針對字符,而不是字串wpo)
string trimleft string ?chars?
(將string開頭出現的要裁掉的字符刪掉)
string trimright string ?chars?
(將string結尾出現的要裁掉的字符都刪掉)
string repeat string count
string reverse string
(8)變量list
創建列表list的三種方式
`llength list`
`lindex list?index...?`
`lrange list first last`
![](https://static.coderbridge.com/img/lastpower65/e7e9f7efceb94d23b7dbee1aebbc3220.jpg)
5.流程控制
(1)while
(2)foreach varname list body
(3)switch
- tcl中的函數proc