从网页中查找相关关键字
Finding relevant keyword from a webpage
- 在一方面,我有一个Java CMS,它提供了一组关键字
- 另一方面,我有一个JavaScript Bookmarklet来策划网页
有没有一种聪明的方法可以将我的关键词集与网页内容进行交叉/匹配?
John Resign在一些文章中解释了如何在字典中压缩然后搜索术语,但这似乎真的很复杂。
事实上,我正在寻找一种聪明的Java或JavaScript算法来有效地匹配文本中的字符串集。
我的问题与此非常接近:在小文本上进行有效搜索
但是,
- 我想在1条文本上做,而不是在文本数据库中
- 使用lucene进行索引非常有效,但我不知道如何将索引项与所有关键字有效匹配
您可以像这样使用java:
Set<String> keywords = new TreeSet<String>(Arrays.asList("keyword1", "keyword2"));
String content = "your doc here with keyword1 etc";
Set<String> contentWords = new TreeSet<String>(Arrays.asList(content.split(" ")));
contentWords.retainAll(keywords);
// now contentWords contains only words from keywords, in this case just "keyword1"
如果您想从而不是关键字的内容中获取所有单词,请使用以下内容:
contentWords.removeAll(keywords);
使用TreeSet
应该会使它表现得很好。
为了便于说明,对编译和运行的这段代码进行了简化。你必须从数据库等加载你的关键词,并从任何地方加载你的内容。
我们已经基于Lucene索引集进行了一些概念验证。
- 它处理所有语言/文本问题
- 它足够快
但一个好的答案需要大量的相关内容。所以结果有时很奇怪。而且是服务器端。。。
相关文章:
- 查找关键字并创建新对象
- 在json对象中查找关键字中的值
- javascript关键字查找器循环
- 如何在javascript字典中使用关键字查找值
- 在文本区域中查找,隐藏和替换带有图片的文本,使用关键字取消隐藏点击
- 从 PHP 动态上传的目录中存在的.txt文件中查找关键字
- jQuery查找并替换元素中的关键字
- 通过查找关键字将Javascript字符串拆分为字符串数组
- jQuery.grep用于查找关键字和短语
- 在字符串中查找关键字并替换它
- 在HTML标记中查找特定的关键字,并使用jquery进行替换
- 尝试使用JavaScript查找关键字并将其斜体
- Javascript:查找字符串中所有匹配的关键字
- 在字典中查找多个关键字
- Javascript:在文本区域查找关键字的数量
- Javascript:查找并突出显示所有出现的关键字.不区分大小写,部分和完整的单词
- 用于查找关键字之间的模式并将其存储在组中的正则表达式
- 在Div中查找关键字,然后获取冒号后的字符串,并将其转换为变量
- 从网页中查找相关关键字
- 基于关键字查找特定元素并推送至数组