我想在emacs lisp中将前向slaches替换为反斜杠.如果我用这个:
(replace-regexp-in-string "\/" "\\" path))
我收到一个错误.
(error "Invalid use of `\\' in replacement text")
那么如何在第二个正则表达式中表示反斜杠?
你所看到的"C:\\foo\\bar"
是字符串的文本表示"C:\foo\bar"
,带有转义的反斜杠以供进一步处理.
例如,如果使用反斜杠字符创建长度为1的字符串:
(make-string 1 ?\\)
您得到以下响应(例如,在使用Cx Ce评估上述内容时,在迷你缓冲区中):
"\\"
获得所需内容的另一种方法是切换"文字"标志:
(replace-regexp-in-string "/" "\\" path t t)
顺便说一句,你不需要逃避斜线.
是否需要双重转义?
即
(replace-regexp-in-string "\/" "\\\\" path)