当前位置: 首页 > 知识库问答 >
问题:

Lucene:如何将StandardTokenizer与我自己的Tokenizer结合使用

江礼骞
2023-03-14

我正在构建一个标记器,它将接收文本并在空白处拆分,并添加句子和段落标记(如果您感兴趣,这里有一个与此相关的问题),但除了运行这个,我还希望能够运行StandardTokenizer(和StandardFilter),以便我能够更智能地标记单词。在这里,我有一个小问题。

  • 如果我先运行StandardTokenizer(可能还有StandardFilter),那么我会得到更智能的标记化,但我没有任何标点符号/空格/大写字母作为句子/段落检测的基础

我应该使用什么模式来解决这个问题?最实际的是,我可能只是想用句子和段落标记来增强标准标记器的标记流。尽管更一般地说,我可能希望将句子/段落标记器与任何其他标记器一起使用。

共有1个答案

归誉
2023-03-14

实际上,您可以更改StandardTokenizer的语法,并为您的自定义需求生成标记器。这就是我使用JFlex/Java CC为新的TokenStream API生成自定义标记器时所做的

 类似资料:
  • 问题内容: 我目前正在使用Electron和MongoDB构建一个桌面应用程序。此应用程序的目的是在应用程序的本地范围内(而不是在服务器上)收集和存储各种客户的信息。我已经使用node.js对MongoDB进行了一些研究;但是我还没有找到在Electron中使用它的方法。 问题答案: 这是用于MongoDB管理的电子应用程序,您可以检查代码作为如何使用mongodb和electronic的示例。

  • 问题内容: 我正在尝试开发一个JMS 独立应用程序 来读写MQSeries上的Queue。我的老板要求我使用 纯Java JMS (而不是ibm.mq lib)来执行此操作。 这是建立jms连接所需的信息: 您知道该怎么做?还是您有任何链接教我做到这一点。 问题答案: 这里的问题是“我的老板要求我使用纯Java JMS(不是ibm.mq lib)来做到这一点”的要求。JMS是一个规范,每个实现都必

  • 问题内容: 我正在尝试使用node.js制作Samsung Smart TV应用程序。 在我的项目中,我想使我的应用程序与服务器PC通信。 根据许多网站,我可以使用“ jsonp”来做到这一点。 这是我发现的客户端代码。 而且,这是我发现的服务器端代码。 这些代码在我的PC(服务器PC)上正常工作,但是当我在其他计算机上打开客户端页面时,它不起作用。 控制台只给我这个日志: 我想使用jsonp处理

  • 我想用Netty ChannelHandler用Gzip压缩和解压,我试了一段时间,但总是有点困难。我的代码如下: 有什么问题吗?

  • 我正在尝试创建一个简单的应用程序,它将我站点上每个网页的页面视图写给Cassandra。我想写每5分钟的累积页面浏览量从一个逻辑小时开始。 我的代码如下所示: 我只需要在聚合5分钟后写,而不是每次更新。有可能吗?阅读这里表明,不使用低级API,可能是不行的,我正试图避免使用低级API,因为这似乎是一个足够简单的任务,可以用更高级的API来完成。

  • 问题内容: 如何创建使芹菜任务看起来像的包装器?还是有更好的方法与Celery集成? Celery的创建者@asksol这样说: 将Celery用作异步I / O框架之上的分布式层是很常见的(提示:将CPU绑定的任务路由到prefork worker意味着它们不会阻塞事件循环)。 但是我找不到任何专门针对框架的代码示例。 问题答案: 如官方网站上所述,这可以通过Celery 5.0版实现: htt