问题描述
我模仿了Helpin'Red的以下代码
a: "big black cat"
parse a [ to "black" insert "FAT "]
print a
big FAT black cat
我的:
b: [1 2 3]
parse b [to 2 insert 4]
print b
4 4 1 2 3 ;; but what I mean is "1 4 2 3".
我的代码有什么问题?以及如何得到我想要的结果?
解决方法
-
to
匹配指定规则的输入,直到成功或到达终点。 -
2
匹配指定次数。 -
insert 4
在当前位置插入一个值,并且总是成功。- 这意味着
2 insert 4
插入两个4
并成功。 -
to
将输入“推进”到匹配的2 insert 4
:我说“推进”是因为它确实没有,插入发生在头部。
- 这意味着
要实现您的目标,您需要使用 2
转义 quote
:
>> also block: [1 2 3] parse block [to quote 2 insert 4]
== [1 4 2 3]
仅供参考,Parse 有官方 reference documentation。