现在,这是一个棘手的问题,我无法找出一个好的解决方案。假设我们在Java中有一个String: - “他今天吃了3个苹果。”现在,数字3可以使用isNumeric函数或使用正则表达式在Java中轻松识别。但是如果我有这样一个字符串呢?“他今天吃了三个苹果。”?我怎样才能确定三个实际上是一个数字?我使用了OpenNlp并使用了它的POS tagger,但是它花费的时间太多了!任何人都可以提出更好的解决方案吗?同样在OpenNlp的“.bin”中,有一个文件“num.bin”,但我不知道如何使用这个文件。 OpenNlp文档也没有提到它。任何人都可以告诉我这是否正是我一直在寻找的东西,如果是的话,那么如何使用它。Java中的文本处理
/* ** * ** * ** * ** * ** * ** * ** * ** * * * * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * **/ 我其实很短的时间她因此,我在这里解决了一个临时解决方案。制作一个文件/字典,并把所有的条目放在散列表中。然后,我将标记我的句子并逐字检查数字,类似于你们的建议。我会在需要时继续更新文件。感谢你们宝贵的建议,如果你有比这更好的东西,我会很高兴。 OpenNlp以非常好的方式实现了这一点,唯一的问题是时间复杂性,我希望尽可能在最短的时间内完成。
你只需要检测数字,只有英文语言?如果是,我认为你不需要一些图书馆。手动编写会更容易。 – bezmax
是......仅限数字......但任何类型的数字,小数,分数,百分比,足球比分像3-1也应该被检测......仅适用于英语...... –