您将如何实现可以导入文件并仍使用LARK对其进行语法分析的语法?
f.e。:
@import file.txt
.....
我找到了一个看起来与您想要的相关的GitHub? https://github.com/lark-parser/lark
from lark import Lark
with open('file_to_read.txt','r') as file:
data = file.read().replace('\n','') #assumes you want to remove \n
l = Lark('''start: WORD "," WORD "!"
%import common.WORD // imports from terminal library
%ignore " " // Disregard spaces in text
''')
print( l.parse("Hello,World!") )
print( l.parse(data) )
如果要打开文件并将其用作云雀
from lark import Lark
with open('file_to_read.txt','') #assumes you want to remove \n
l = Lark(data)
print( l.parse("Hello,World!") )
print( l.parse("your string to parse") )
,
我刚刚发现我可以使用C / C ++预处理器生成一个文件,然后可以对其进行解析:)
它没有集成,但可以使它工作
cpp -P included.inc > output.file