Hi, please have a look at this code and try it out: ---START
rebol [] rule1: [start: copy string1 [to " - " (?? string1) | to newline] copy string2 to end] rule2: [start: copy string1 [to " - " (?? string1) 3 skip | to newline] copy string2 to end] text: "this is a - parsing test" parse/all text rule1 ?? string1 ?? string2 print "-----" parse/all text rule2 ?? string1 ?? String2 ---END >> do %parsing-error.r string1: "this is a - " string1: "this is a" string2: " - parsing test" ----- string1: "this is a" string1: "this is a - " string2: "parsing test" == "parsing test" I find some things very strange here: Rule1: - Why does string1 contain " - " when printed from inside the rule? The rule states 'to and not 'thru? IMO string1 should be "this is a" - After the parsing string1 holds what I did expect in the first place too. This indicates that the varaibles input gets copied to will be changed after the parsing. But when and how? Rule2: - This time the string1 is as expected inside the rule but changes to include the to " - " sequence after the parsing Any idea what's up here? Is this a bug? Robert -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.