هل يمكنني "إلغاء اتباع" قاعدة برمجيًا في Treetop؟

StackOverflow https://stackoverflow.com/questions/2648760

  •  27-09-2019
  •  | 
  •  

سؤال

هل من الممكن تخطي قاعدة عن طريق التحقق من صحةها باستخدام رمز الياقوت في Treetop؟

قل أن هناك شيء مثل هذا:

rule short_words
  [a-z]+ {
    def method1
      text_value
    end
    ...
  }

end

وأريد أن يكون حجم الكلمات من 2 إلى 5 أحرف. هل يمكنني الخروج من القاعدة إذا وجدت أن طول Text_value ليس بين 2 و 5؟

هل كانت مفيدة؟

المحلول

يدعم بناء جملة Treetop {Min ، Max} في المباريات. (مقتطفات من http://treetop.rubyforge.org/syntactic_recognition.html)

عدد التكرار

يتوفر أيضًا عدد التكرار المعمم (الحد الأدنى ، الحد الأقصى).

* 'foo' 2.. matches 'foo' two or more times
* 'foo' 3..5 matches 'foo' from three to five times
* 'foo' ..4 matches 'foo' from zero to four times
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top