我有以下语法
GUID : GUIDBLOCK GUIDBLOCK '-' GUIDBLOCK '-' GUIDBLOCK '-' GUIDBLOCK
'-'
GUIDBLOCK GUIDBLOCK GUIDBLOCK;
SELF : 'self(' GUID ')';
fragment
GUIDBLOCK: [A-Za-z0-9][A-Za-z0-9][A-Za-z0-9][A-Za-z0-9];
atom : SELF # CurrentGuid
这是我的访客
@Override
public String visitCurrentGuid(CalcParser.CurrentRecordContext ctx) {
System.out.println("Guid is : " + ctx.getText());
System.out.println("Guid is : " + ctx.getChild(0));
return ctx.getText();
}
输入“self(5827389b-c8ab-4804-8194-e23fbdd1e370)”
只有一个孩子是整个输入本身“self(5827389b-c8ab-4804-8194-e23fbdd1e370)”
我应该如何获得 guid 部分?
根据我的理解,如果我的语法结构构造为 AST,我应该能够打印出树。
我应该如何更新我的语法?
相关分类