【发布时间】:2020-03-30 20:08:45
【问题描述】:
我想这样做:
Send "MenuPick " & quote & ShortForm & quote to stack "Abbrevs"
堆栈“Abbrevs”有一个处理程序MenuPick,它执行通常的菜单选择操作。除了具有嵌入式引号的 ShortForm 参数外,这可以正常工作。
如何发送带有嵌入式双引号的参数?
这些不起作用:
- 再次引用字符串
- 将引号更改为两个引号
- 用反斜杠转义引号
【问题讨论】:
我想这样做:
Send "MenuPick " & quote & ShortForm & quote to stack "Abbrevs"
堆栈“Abbrevs”有一个处理程序MenuPick,它执行通常的菜单选择操作。除了具有嵌入式引号的 ShortForm 参数外,这可以正常工作。
如何发送带有嵌入式双引号的参数?
这些不起作用:
【问题讨论】:
好吧,我又为此苦苦挣扎,发现可以像这样在Send 期间评估 arg:
Put "Send " & quote & "MenuPick ShortForm" \
& quote & " to stack " & quote & "Abbrevs" \
& quote into MyCmd
Do MyCmd
【讨论】:
MyCmd 中创建语句send "MenuPick ShortForm" to stack "Abbrevs",然后使用do 命令执行变量中的语句。这是一个不必要的步骤,需要额外的处理开销。
假设您要发送带引号的文字字符串“ShortForm”作为消息的参数,请先尝试将带引号的字符串放入变量中。
put quote & "ShortForm" & quote into tPick
send "menuPick tPick" to stack "Abbrevs"
【讨论】:
shortForm 包含您的引号,send "menuPick ShortForm" to stack "Abbrevs" 应该适合您。