WEB开发网
开发学院软件开发Python 了解 DParser for Python 阅读

了解 DParser for Python

 2007-03-29 12:13:45 来源:WEB开发网   
核心提示: abc2.py 中的优先级规范会完成任意一种情况下的解析,含糊短语的解析相当难以捉摸,了解 DParser for Python(5),难以确切理解,基本上,这是我所喜欢的它的一个方面,观察这些信息并不是直观地创建正确语法所必需的,结果的生成是按遍历的顺序从左到右执行的,每一个结果都尝试去

abc2.py 中的优先级规范会完成任意一种情况下的解析。

含糊短语的解析相当难以捉摸,难以确切理解。基本上,结果的生成是按遍历的顺序从左到右执行的,每一个结果都尝试去从左到右获取尽可能多的单词。只有当向前查找过程中发生明显错误时,才会进行回溯。总之,这只是大概。

调试简介

DParser 可以显示调试信息的选项,这是我所喜欢的它的一个方面。观察这些信息并不是直观地创建正确语法所必需的,但是至少可以通过它洞察当处理特定的短语时解析器所采取的动作。例如:

清单 8. 展示对不确定结果的追踪

#------- Showing a trace of speculative productions
$ echo -n "alex alice benny carl dave" | ./abc2.py --debug
        d_words --?:
          d_A --?:   alex
        d_word --?:   alex
        d_words --?:
       d_phrase --?:   alex
        d_words --?:   alex
          d_A --?:   alice
        d_word --?:   alice
        d_words --?:
        d_words --?:   alice
       d_phrase --?:   alex alice
       d_phrase --?:   alex alice
        d_words --?:   alex alice
        d_word --?:   benny
         d_AB --?:   alice benny
        d_words --?:   benny
        d_words --?:   alice benny
        d_words --?:
       d_phrase --?:   alex alice benny
       d_phrase --?:   alex alice benny
       d_phrase --?:   alex alice benny
        d_words --?:   alex alice benny
        d_word  :   alex
        d_words  :   alex
          d_A  :   alice
         d_AB  :   alice benny
         d_ABC --?:   alice benny carl
        d_words --?:
       d_phrase --?:   alex alice benny carl
         d_ABC  :   alice benny carl
        d_word --?:   dave
        d_words --?:   dave
       d_phrase --?:   alex alice benny carl dave
        d_word  :   dave
        d_words  :   dave
       d_phrase  :   alex alice benny carl dave
Head: alex
ABC: alice benny carl
Tail: dave

上一页  1 2 3 4 5 6 7  下一页

Tags:了解 DParser for

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接