Parse Cookbook - qtxie/red GitHub Wiki

test: {
    <p>some text</p>
    <table>
        <data> <p>a</p> <p>b</p> <p>c</p> </data>
        <data> <p>d</p> <p>e</p> <p>f</p> </data> 
    </table>
    <p>textafter</p>more text
    <table>
        <data> <p></p> <p>bbb</p> <p>cc</p> </data>
        <data> <p>dd</p> <p>e</p> <p>f</p> </data> 
    </table>
}
parse test [
    (keeping: off) 
    collect set c any [
        {<table>} (keeping: on) 
        | {</table>} (keeping: off) 
        | {<p>} if (keeping) [ahead {</p>} keep (#"-") | keep to {</p>}] 
        | skip
    ]
]
>> foreach [i1 i2 i3] c [print [i1 i2 i3]]
a b c
d e f
- bbb cc
dd e f
rule: [keep copy x to end]
parse [1] [collect rule]

rule: [keep set x to end]
parse [1] [collect rule]

rule: [keep skip to end]
parse [1] [collect rule]
⚠️ **GitHub.com Fallback** ⚠️