有什么技术可以识别出一段文本中的有意义的文本

比如下面的截图中。红框中的文本除了作为整体的组织形式,对内容没有实际的贡献。
有什么办法可以识别出来一段话中有意义的,或者最有意义的内容。

这是要尽量减少全文搜索索引文件的大小吧?

我觉得没啥好办法,批量的东西做不到精准,除非机器学习。GD全文索引又不可能用上ML。

换个思路,半AI:希望全文搜索索引的,需先指定特定标签,在该特定标签内的才生成索引,其他的内容忽略。
缺点是:这样一来,使用全文搜索的门槛提高了不少,不是每个人都有HTML标签的基础知识。

2 个赞

https://code.google.com/archive/p/boilerpipe/

看到一个技术,不知道是否有对应的c++的实现

2 个赞

规定一个忽略索引的标记,让有需要的作者自己加上就可以。

<span searchable="0">不需要参与索引的文本</span>

或者直接添加可索引内容标记:

<div searchable="1">需要索引的文本</div>
1 个赞

首先,从段话中分析出有意义的文本是不现实的,因为样本太少,就连人都不一定知道是不是有意义的。

这个问题也许可以换成:在很多文本中,找到出现次数很多的句子。也许 Stop Word 和 TFIDF 可以拿来思考思考,找找灵感。

3 个赞

请教个与全文搜索相关的问题:

有什么软件可以比对两个文本文件,找出最为接近的行、进行可视化的分栏对比?

这个最为接近的行,可以是按这一行在另一个文档中搜索相同UTF码最多的行、并按相似度排序;如果这一行对应有三四个以上的另一个文档相同行,则比对范围可以增加前/后行、再进行搜索比较

现有的软件如BeyondCompare大多是找不同,两个文档类似的行、稍微有不同就pass了
开源的Meld可以用正则表达式pass掉部分内容再开始比较,这一点不错,可惜还是找不同而不是找相似

EmEditor 中的 Compare 挺复杂的,暂时无需求没仔细研究过,可以试试。

我的需求应该是要进行全文比对后、在后台生成索引

EmEditor 中的 Compare 大多不行

要求如果这么具体,恐怕只能写专门的脚本了