Rebol:如何将相同的解析规则应用于从Windows剪贴板粘贴的多行

时间:2017-05-27 19:29:28

标签: parsing rebol text-analysis

我们说我有剪贴板

title1: (todelete) blah blah
title2: (also to delete) blah blah blah

最后我想要这个输出

title1: blah blah
title2: blah blah blah

我知道如何解析一行并将其附加到一个块

parse/all clipboard [
    copy x to "(" (append block x) thru ")"
    copy x to end (append block x)
]

但我不知道迭代每一行的最简单方法。

1 个答案:

答案 0 :(得分:2)

最简单的方法是将文本拆分为行,然后将规则应用于每一行

 >> parse/all read clipboard:// "^/"
 == ["title1: (todelete) blah blah" "title2: (also to delete) blah blah blah"]

如果您想在一次点击中执行此操作,则可以使用some

多次应用规则
 parse/all read clipboard:// [some [line-rule]]

但要考虑换行符,您需要添加该换行符以及end作为替代。

 parse/all read clipboard:// [some [line-rule | "^/" | end ]]