irony

    2

    1답변

    아이러니 라이브러리로 문맥 자유 문법을 사용하여 사용자 입력 접두사 표기법 논리 표현식을 구문 분석하려고합니다. 이것은 수업 과제를위한 것입니다. 만약 누군가이 일에 대해 전문가가되면, 저는 더 많이 알고 싶습니다. 나는 아이러니에 구현하고있어 문맥 자유 문법을 사용하여 식 트리에 이러한 구문 분석을 시도하고있어 and P Q -- (meaning P^Q)

    0

    1답변

    내가 b.a := 7; 내 문법과 같은 문을 구문 분석 문법을 쓰기 위해 노력하고 있어요 그것은 내가 을 구문 분석하려고 할 때 잘 작동 public class STGrammar : InterpretedLanguageGrammar { public STGrammar() : base(caseSensitive: false) {

    0

    1답변

    : char-literal ::= ' regular-char ' ∣ ' escape-sequence ' escape-sequence ::= \ (\ ∣ " ∣ ' ∣ n ∣ t ∣ b ∣ r ∣ space) ∣ \ (0…9) (0…9) (0…9) ∣ \x (0…9∣ A…F∣ a…f) (0…9∣ A…F∣ a…f) 요점은 내가

    2

    1답변

    아이러니 (나는 약 10 년 전 유니온에서 BNF를 배웠다.)를 처음 접했고, 준 실제 좌표 파서를 만드는 것으로 시작했다. 다음은 가 나는 문법 탐색기를 실행할 때, 그러나 입력을 70 50' 44" N 1 13' 66" E 을 구문 분석 할 수 있었어야했는데 생각 문법 클래스 (https://github.com/spadger/notam-visuali

    2

    1답변

    아이어니를 사용하여 스크립팅 언어 용 파서를 만들었지 만 약간의 문제가 발생했습니다 : 어떻게 아이러니에서 EBNF 표현식을 번역합니까? '(' [ Ident { ',' Ident } ] ')' 는 이미 Chunk.Rule = (Ident | Ident + "," + Chunk); CallArgs.Rule = '(' + Chunk + ')' | '('

    2

    1답변

    매우 기본적인 명령 줄 구문 분석기를 만들려고합니다. , 이것은 전체 명령에 대한 단일 인수를 허용 public class CmdGrammar : Grammar { public CmdGrammar() : base(caseSensitive: true) { var program = new NonTerminal("prog

    1

    1답변

    두 개의 구문 (문이 hello이고 블록 정의가 fun)만으로 매우 간단한 들여 쓰기에 민감한 언어를 구문 분석하려고합니다. 그렇게하기 위해 hello hello fun hello hello hello , 나는 아이러니 다음과 같은 문법을 구성했다 : public class NaiveIndent : Grammar { p

    0

    1답변

    내가 생성 및 디스플레이 문맥 자유 문법 아이러니를 사용하여 지금까지 나는이 코드를 public ExpressionGrammar() { //// 1. Terminals Terminal number = new NumberLiteral("number"); Terminal identifier = new

    1

    1답변

    Irony.Net (https://irony.codeplex.com/)으로 작업 중이며 SQL 문법을 사용하고 있습니다. 이제 구문 분석기 및 항목을 올바르게 구문 분석 할 수 있습니다. (필자는 기본 문법에 매개 변수 지원을 추가해야했습니다.) 이제 제 질문은 간단합니다. ParseTree를 조작 한 후에 ParseTree에 대한 문을 다시 작성하려고합니

    1

    1답변

    나는 Irony을 사용하여 상당히 간단한 파서를 만들려고하고 있지만 아이러니가이 특별한 경우에 적합하지 않을 수도 있다는 결론에 도달했습니다. server_name example.com *.example.com www.example.*; server_name www.example.com ~^www\d+\.example\.com$; server_nam