【发布时间】:2017-03-22 05:41:27
【问题描述】:
所以我想回显一行只包含三个双引号。如果我打印两个双引号,它就可以正常工作并打印它(我相信原因是有一个相应的结束引号)并且 2 的倍数的双引号可以正常工作,但我无法回显其中的奇数个。
从我搜索双引号的转义序列字符来看,双引号本身就是双引号,它没有得到我想要的结果。
我正在运行的命令:
echo Item.Subject = Replace(Item.Subject, """, "-")>> try.xyz
期待""" 这个。
我试过了
"\""
"\\""
"^""
我正在生成一个用于在 Outlook 中导入的 bas 文件。 MC ND 也纠正了我在生成的 VBA 文件中的错误。正确的方法是打印 4 个双引号来从 VBA 脚本的角度对双引号进行转义,因此正常打印 4 个双引号可以解决我的问题。第二个双引号将转义第三个,第一个和最后一个是提及 MC ND 答案中的替换字符串。
非常感谢MC ND你启发了我。 :-P
PS: MC ND 给出了比这个问题应得的更详细的解释,所以我扩展了这个问题。
【问题讨论】:
-
发布您的代码示例
-
转义
)右括号:echo Item.Subject = Replace(Item.Subject, ^""", "-"^)结果到Item.Subject = Replace(Item.Subject, """, "-")但是目标语言很重要:例如,要获得有效的VBScript代码 sn-p,请使用echo Item.Subject = Replace(Item.Subject, """", "-"^)跨度> -
我实际上想创建一个 VBScript 行,它说用 - 替换每次出现的 "。所以我认为等效代码是
Item.Subject = Replace(Item.Subject, """, "-")。如果我错了,请纠正我。谢谢
标签: vba batch-file cmd outlook windows-scripting