2009-10-05 2 views
2

С регулярными выражениями Руби я мог бы написать/[0-9] {3,}/Я не могу понять, как записать это в treetop, кроме:Как определить {min, max} совпадения в верхушке верхушки

rule at_least_three_digit_number 
    [0-9] [0-9] [0-9]+ 
end 

Есть ли правило «по крайней мере для большинства» n для верхушки?

+1

(закрыто и вновь открыто, чтобы очистить флаги, как дубликат был удален OP) –

ответ

1

Похоже, что у ПЭГ нет некоторых операционных операторов RE, но взамен вы получаете гораздо более мощный сопоставитель выражений.

+1

Я верю, что это проблема реализации, можно определенно написать' а {2, 3} 'вместо' aa/aaa', если это позволяет реализация (treetop не afaik). – clyfe

+0

Нет, это возможно с верхушкой. См. Ответ Луки. –

1

http://treetop.rubyforge.org/syntactic_recognition.html

Обобщенный Количество повторений (минимум, максимум) также доступен.

'Foo' 2 .. два или совпадает с 'Foo' несколько раз

'Foo' 3..5 совпадает с 'Foo' от трех до пяти раз

'Foo' ..4 матчей ' Foo»от нуля до четырех раз