java word中提取关键字

发布网友 发布时间:2022-04-20 11:38

我来回答

2个回答

热心网友 时间:2022-04-06 11:19

给个思路吧。
读取word用doc4j,然后就是读成字符串进行处理了。
提取关键字首先是中文分词技术,就是把一段话划分成多个组成的词语,然后统计词语的出现次数,这个是主要依据。这个是有实现的jar包的,可以去搜,搜java 中文分词就行。
分词之后,记录词语出现位置,这个是辅助的依据,记录词语一句话中的位置,越靠前越像关键字,权重越高。
甚至可能需要建立一个权重体系,次数设置一个权重,整体位置设置一个权重,不同位置权重也不同。不了解权重可以理解成系数(百分比的,然后计算那个词是关键词)。

同时需要注意,可能需要排除一些常用词,哪些次需要排除,这个需要根据程序反复运行,读取不同word文章的结果来定。
不明白的话在问吧。追问感谢详细的回答,那请问:
①用apache 的poi来读取word可以吗?
②如何将每个词进行统计?如果文章全部词语都进行统计,效率会不会很低?
③怎么判断一些常出现的字词,比如“那么”,“如果”,“的”,"了"之类的?需要建一个类似常用词库之类的吗?
谢谢了!

追答

poi是用来操作excel的,是否能用来读取word不知道,不能把,没有这么用过。

将词出现的次数放进map中,算法很多,我说的这个算法效率是低。

是需要建立一个需要排除的字库的。凡是字库内的词都不算。


热心网友 时间:2022-04-06 12:37

首先,从WORD中得到文字,然后,做分词——这个是难点。可以用apache的一个开源项目做的。
国内也有一个分词的项目,可以拿来用。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com