Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
是否有任何 Tcl 函数可以自动将转义字符添加到字符串?
例如,我有一个正则表达式
"[xy]"
调用该函数后,我得到
"\[xy]"
再次被调用后,我得到
"\\\[xy]"
我记得有一些脚本语言有这样的功能,但我不记得它是哪种语言。
添加“必要”的转义字符的常用方法是使用list(%是我的 Tcl 提示符):
list
%
% set s {[xy]} [xy] % set s [list $s] {[xy]} % set s [list $s] {{[xy]}}
如果可以,该list命令宁愿不理会,如果可以逃脱,则用大括号括起来,否则使用反斜杠(因为反斜杠真的不可读)。
如果你真的需要反斜杠,string map或者regsub会做你需要的。例如:
string map
regsub
set s [regsub -all {\W} $s {\\&}]