简而言之:
JAVA /hibernate/ AJAX / SpringMVC
我想这是由用户发布的每个评论应该在服务器端读取 存储到数据库中之前 ,并 拒绝评论是否包含令人反感的文字 。
令人反感的文字清单相当庞大(也许数千个)。查看以下示例列表:http : //onlineslangdictionary.com/lists/most-vulgar-
words/
我猜想遍历此列表并执行如下所示的功能并不是那么快。还有其他方法可以更快地执行此过滤器吗?您认为搜索超过千分之一的项目会对资源CPU /
RAM产生重大影响吗?任何建议都欢迎!
for(String offensiveText : offensiveTextList ){
if(commentText.contains(offensiveText )){
//reject comment
}
}
更新:令人反感的物品清单中可以包含由几个词组成的物品(例如3词文字,也 可以 包含停用词)。它甚至可以包含非字母字符,例如*&^%。
如果注释包含相应的攻势项目(正是 相同 的字母),那么它被认为是拒绝
您可能需要为此使用一些自然语言处理库。如果您要比较注释中的每个 M 词和列表中 N个 令人反感的词,那么您的算法复杂度将O(MN) = O(N^2)
很高。
看一下Lucene堆栈,您可能会发现一些非常好的主意,例如,如何标记注释并通过删除无意义的单词来减少输入。
也请看以下论文:“区分事实信息与带有新闻报道中的单词或短语的侮辱性或侮辱性消息”
我有一个列表的数据集,其中包含其他列表,我想找到前1000个单词 我试过这个,但不起作用: 从集合导入计数器counts_top1000=[逐字,Counter(mainlist).MOST_COMMAN(1000)] 请注意,我的数据集是“mainlist”。 如果你有更多的想法,我将不胜感激。
嗨下面这个问题 如何在Jackson中为泛型类型创建自定义反序列化器? 我想知道如何通过这个来解析 这就是我目前所拥有的 当我试图反序列化一点这个的时候,我得到了一个NPE
所以我在一个react项目中有一个材料表,默认的过滤选项只是在数据上方放一行,你可以在上面输入任何你想要的内容。我需要的是在表格上面做一个按钮,我可以点击,然后点击复选框来选择我想要过滤掉的内容。我想知道是否有一种方法可以通过修改material-table提供给您的内容来做到这一点,或者我是否应该将复选框选项链接到一个函数,该函数将再次获取数据并用.filter将它们过滤掉?这似乎是一个很长的距
我有一个包含50000个单词的单词列表,还有一个逐行查找字母字符的txt文件。我试图通过按顺序阅读单词列表中的单词来找到包含7个不同字母的单词,我为此编写了一个方法。 首先,我浏览单词并同步字符列表,然后通过导航字母txt文件在单词中相互检查,如果有,则增加计数器。通过这种方式,我试图了解单词中有多少不同的字母,最后,如果它提供了控制,我会将其添加到列表中。 读取txt文件并返回哈希集。 但它不是
我的文件:syn.txt 一切都很好,除了同义词: 我做了一些研究,我发现了以下几点: 所以我试图改变我的配置文件,并在索引中添加过滤器,但它不起作用。 什么东西有什么想法吗?
问题内容: 实现目标: 我想要名称属性包含列表中任何单词的所有对象。 我有: 例如: 然后应返回具有该名称的对象,因为word2在列表中。 请帮忙! 问题答案: 您可以使用对象来构造如下查询: 编辑: 是一种奇特的写作方式 您还可以使用显式的for循环来构造对象。