我知道您可以将多行字符串分配给这样的变量:
MyVar =
(
this
is
a
string with multiple
lines
)
但是有没有办法将上面的字符串分配给对象属性?我尝试这样做但我收到了一个错误:
Array := {}
Array["key"] =
(
this
is
a
string with multiple
lines
)
错误说:
以下变量名称包含非法字符
"这个 是 一个
字符串"
我只是希望能够在文本编辑器中打开我的脚本,并将多行字符串直接复制并粘贴到编辑器中作为对象的属性。
答案 0 :(得分:1)
你必须使用正确的赋值运算符:= with Objects,同样你的文本需要被引号括起来。
尝试:
obj := {}
obj["key"] :=
(
"this
is
a
string with multiple
lines"
)
MsgBox % obj["key"]
或者你可以在下面这样做:
x =
(
this
is
a
string with multiple
lines
)
obj["key"] := x
MsgBox % obj["key"]
你也可以像这样构建一个多行对象:
obj := {"key":
(
"this
is
a
string with multiple
lines"
)}
MsgBox % obj["key"]
答案 1 :(得分:0)
使用如下所示的原始多行字符串赋值,它可能会破坏您在脚本中可能产生的任何缩进。
str := {"Lines":
(
"first
second
third"
)}
虽然这样可行。如果您正在寻找保留代码缩进的方法,那么您可以通过使用`n这样划分行来创建多行字符串:
str := {"Lines": "first`nSecond`nThird"}