无论换行如何解析函数签名的文本文件

时间:2015-11-04 14:05:40

标签: parsing text text-parsing

我是文本解析域的新手。我的问题是关于给定函数签名的文本文件解析方法,以评估编码错误。没有决定使用哪种语言解析文本文件。以下是对情况的简要描述。

  1. 有一个包含用户编写函数的文本文件(比如c ++作为语言,只评估用户定义的函数。即非本机函数。)
  2. 它可以包含分别由//和/ * * /分隔的单行注释和多行注释。
  3. 不应评估注释行的编码错误。空行也被跳过。
  4. 要评估的功能已与列表中的参数一起保留在列表中。必须仅使用允许值调用参数。因此,应在函数中验证每个参数值。
  5. 这些是评估中的并发症。

    • 功能可以跨越多行。
    • 在函数调用中,可能有另一个函数调用给定的参数位置。如果这也是用户定义的并且在给定列表中,也应该进行评估。
    • 评估完成后,生成一个报告,指出错误的函数调用以及以下信息。
  6.   

    行号,   功能名称,   参数位置无效

    这是一个示例。 (CRLF表示行结尾)

    f1(f1_arg1, f1_arg2, f2(f2_arg1, f2_arg2), f1_arg3) <CRLF>
    
    f1(f1_arg1, f1_arg2, f2(f2_arg1, <CRLF>
    f2_arg2), f1_arg3) <CRLF>
    
    f1(f1_arg1, f2(f2_arg1, f2_arg2), <CRLF>
     f3(f3_arg1)) <CRLF>
    
    f1(f1_arg1 <CRLF>
    , f2(f2_arg1, f2_arg2), <CRLF>
    f3(f3_arg1)) <CRLF>
    
    f1( <CRLF>
    f1_arg1, f2(f2_arg1, f2_arg2), <CRLF>
     f3(f3_arg1)) <CRLF>
    

    我认为这不能作为流解析,因为我必须考虑当前行是否被评论。

    评估函数的最佳方法是什么,无论其在多行中的跨度如何?

    谢谢, 因迪卡。

0 个答案:

没有答案