I think that Peggy allows this. Instead of having to write:
Part ( "," Part )* for "one or more Parts separated by a comma", you could write, e.g.:
(Part / ",")+ Now, I'm sure you won't be able to use a slash there - you just need something to separate the item(s) from the separator. You'd also be allowed to use
(Part / ",")* to mean "zero or more Parts separated by a comma"
Where you see Part, you could, in fact, put any expression at all. Personally, I think it's much clearer what you're expecting to see. The separator is usually something with no semantic meaning - it's just there to make parsing easier - for both the software and the brain.
I think that Peggy allows this. Instead of having to write:
Part ( "," Part )*for "one or more Parts separated by a comma", you could write, e.g.:(Part / ",")+Now, I'm sure you won't be able to use a slash there - you just need something to separate the item(s) from the separator. You'd also be allowed to use(Part / ",")*to mean "zero or more Parts separated by a comma"Where you see Part, you could, in fact, put any expression at all. Personally, I think it's much clearer what you're expecting to see. The separator is usually something with no semantic meaning - it's just there to make parsing easier - for both the software and the brain.