Java:从列表中解析单词的文本(首字母缩略词,缩写等)

时间:2010-08-12 06:39:48

标签: java parsing

鉴于:

  • 文字(HTML标签可选)
  • 包含缩写和首字母缩写词的数据库表(如“etc.”,“s.o。”,...)

目标:

  • 构建一个解析器,查找给定文本中的所有匹配项
  • 建立一个小gui让用户选择找到的匹配项是否匹配(这将按要求摆动)
  • 用户可以选择忽略匹配(也必须标记为“要忽略”)
  • 使用特殊的XML构造替换任何已接受的事件

我的主要问题是解析器,我已经提到了GUI只是为了给出一个完整的概述。

任务是构建一个分析e.x文本的解析器。首字母缩略词并标记它以供以后后处理。任何“标记”都必须以XML标签的形式出现,因为周围环境不接受任何其他内容(我们在CMS的DOM编辑器中以“Spirit”结束;))。

是否有人对图书馆有提示或有没有人建立这样的东西?你是怎么做的,或者你会怎样处理这样的事情:

  • 两个或多个单词是一个实体
  • fullstop - 您正在寻找的部分句子或部分令牌
  • 迭代替换 - 用户接受第一次出现 - 即时替换还是缓冲?

任何想法,图书馆提示,维基百科文章,等等 - 都是有帮助的。我没有找到任何回答上述所有方面的相关问题。

2 个答案:

答案 0 :(得分:2)

我已经阅读了很多关于apache lucene的好东西,如果我有一个类似的项目,我会先看看这个。它可以索引源文档并帮助查找所有缩写词(如果我说得对,那就是“解析”步骤的结果)。

答案 1 :(得分:1)

使用在输入上运行的某种SAX解析器。对于每次点击,您暂停解析,在gui中显示并让用户选择要执行的操作。解析时在后台构建DOM树。

每次用户替换某些内容时,都会替换该DOM树中的给定元素(您知道它是哪个,因为您持有用户需要响应的元素)。

当整个事情被解析和替换时,你只需打印出DOM树。