0
有在TCL的命令,它允許通過更換現有的基礎上創建新的字符串:Tcl。在文件替換字符串
string map ?-nocase? mapping string
是否有TCL允許改變現有的字符串命令? 例如:
set string1 abcabcabc
通過使用一些命令替換字母 「a」,由 「0」 來獲得與價值字符串1 0bc0bc0bc
有在TCL的命令,它允許通過更換現有的基礎上創建新的字符串:Tcl。在文件替換字符串
string map ?-nocase? mapping string
是否有TCL允許改變現有的字符串命令? 例如:
set string1 abcabcabc
通過使用一些命令替換字母 「a」,由 「0」 來獲得與價值字符串1 0bc0bc0bc
儘管@peter解決方案工作得很好。
若要不fileutil
包在文件TCL
替換string
:
set fd [open "filename.txt" r]
set newfd [open "filename.txt.tmp" w]
while {[gets $fd line] >= 0} {
set newline [string map {a 0} $line]
puts $newfd $newline
}
close $fd
close $newfd
file rename -force "filename.txt.tmp" "filename.txt"
或'設置F [開放file.txt的R +]; puts -nonewline $ f [string map {a 0} [read $ f]] [seek $ f 0; list];關閉$ f';)工作也一樣,但我不會推薦它用於生產代碼。 –
@PeterLewerin「不會推薦它用於生產代碼」 - 你可以再說一遍!雖然它確實無法保證安全,但很容易引入錯字並使其不真實。 OTOH,它值得考慮一次轉換文件全部內容的方法。即使對於許多兆字節的文件,使用這種方式也很容易。 –
非常感謝! –