peg

    0熱度

    1回答

    我正在嘗試處理最終將使用類似柑橘類Ruby的語法中的語法的布爾邏輯。我得到一個遞歸問題,但我不清楚爲什麼。下面是我想要處理文本(它應該有在最後一個換行符): COMMANDWORD # MYCOMMENT 這裏是我的柑橘語法(用來處理更高級的東西): grammar Grammar rule commandset command+ end rule c

    3熱度

    1回答

    前言 我正在創建甲 CCESS Ç ONTROL 小號特林(或小號 ystem)( ACS)帶有PEG.js的字符串解析器/解釋器。 ACS字符串通常用於公告板系統(BBS)上,以檢查對電路板特定區域的訪問權限。例如,請參閱Renegade's ACS documentation。 例ACS字符串 下面是一些簡單的字符串,他們的英語翻譯說明: // Has GM123 OR NOT GM456

    4熱度

    2回答

    我看了一下用於JavaScript的PEG.js解析器生成器。它看起來相當不錯! 我對指定語法沒有太多經驗。我正在尋找幫助,在1擴展示例語法有點允許 十進制數 操作^ 預定義的功能(不是函數聲明,只調用一些功能,我事先說明) ,其中參數本身是一階表達式,例如f(g(2 + 4)+ 3) 變量AZ(不是聲明,只是用法定義 - 這些意味着指向一個也包含程序的輸入框,字母A到Z就足夠了) 你能幫我找到幫

    2熱度

    1回答

    值對象在PEG.js我有以下規則 label = l:[a-zA-Z\$\#\% ]* { return word(l); } block = "[" l:label "]" { return l; } option = "\n"* key:block value:label "\n"? {return {key : value}; } 如果解析[hello] world它導致: {"ke

    1熱度

    1回答

    我處於需要編寫大量解析規則(換句話說,將字符串轉換爲另一個字符串或結構化數據的函數)的位置,並且我想我會使用PEG,這將是巨大的更容易或我通過只提供一個列表的例句和他們的正確解析寫在我看來在技術上微不足道,但我很困惑。 我玩過PEGjs(解析表達式語法工具)和正則表達式。看起來對於我的目的來說,需求確實非常基本,遠遠低於PEG和正則表達式提供的所有能力。 這裏是我想分析哪一個例子: "I want

    3熱度

    1回答

    我正在研究PEG語法,它需要使用音樂編程語言中的代碼並創建音樂事件(音符,和絃,音量/速度更改等)的解析樹。我的MPL的一個特點是它支持語音,即同時發生的不同事件序列。我很難讓我的Instaparse語法正確地解析這個......我想要的是一個voices標記,它由一個或多個voice組成,每個標記由語音定義(例如V1:)組成,然後是任意數字的事件。 voices標籤應該以V0:結束(意味着分割音

    5熱度

    1回答

    我想分析一個文件,內容如下行: simple word abbr -8. (012) word, simple phrase, one another phrase - (simply dummy text of the printing; Lorem Ipsum : "Lorem" - has been the industry's standard dummy text, ever since

    3熱度

    1回答

    使用https://github.com/JetBrains/Grammar-Kit如何重寫沒有左遞歸的語法? grammar ::= exprs exprs::= (sum_expr (';')?)* private sum_expr::= sum_expr_infix | sum_expr_prefix sum_expr_infix ::= number sum_expr_prefix

    0熱度

    1回答

    我需要編寫一個Python PROGRAMM在字符串文本西班牙語數字轉換成位數: 輸入: 'Ciento Veinticuatro Mil Ochocientos Treinta y Cinco' 輸出所需: 124835 我寫了一些代碼,但我意識到我正在重新發明輪子,只是一個解析器。所以,我需要使用lexic/grammar解析器模塊。但我以前從來沒有用lexic/grammar解析器處

    1熱度

    1回答

    我正在設計一種音樂編程語言,並將其語法作爲PEG語法來實現。解析過程結果相當複雜,所以最簡單的方法是定義幾個單獨的語法,然後按順序應用它們。到目前爲止,我有三種語法: 取出源文件的全部內容並去掉註釋。 取出源文件(註釋去掉)並用儀器分開。這導致成對的樂器名稱/定義和由所述樂器「演奏」的「音樂代碼」。 實際解析音樂代碼並返回音樂「事件」的解析樹。 在這三個解析器中,#3是迄今爲止最複雜的。 #1和#