如何比较 List<String> 和 String?
How can I compare a List<String> against a String?
我目前有这个代码:
private boolean checkWildcardFilter(String contentStripped, GuildTransformer guild) {
String words = contentStripped.toLowerCase();
List <String> badWordsList = replace(guild.getBadWordsWildcard());
System.out.println("UWords: " + words);
System.out.println("FWords: " + badWordsList);
return words.stream().anyMatch(badWordsList::equals);
}
示例中apple和hi应该被过滤
我想让它做的是检查句子“我会去吃一个盛大的苹果和我的新 hire ”。无论是在句子中的哪个位置,它都需要找到单词“apple”和“hi”。如果找到它,它应该过滤
它在 Java 中,单词来自数据库:database entry
它解码为:(一些脏话)
["***", "***", "***", "***"]
我认为您需要的是检查字符串是否包含任何字符序列。
如果它来自数据库,您将需要使用适当的 queries/DB connection/etc..
检索您想要的那些
如果关键字被加密,您将必须对其进行解密。有几个解密库,你只需要知道"what"你说的语言
正如@Clashsoft 所提到的,您要在此处解决多个问题。建议将它们分成 3 个,这样你就有很多 objective 个问题。
对于字符串位置,可以使用这个依赖:
可以在类似的问题上找到更多详细信息:
How do I check if a string contains a list of characters?
我目前有一些可以使用的东西,但我正在寻求改进,我可以做些什么来改进它?
我有东西可以用;
private boolean checkWildcardFilter(String contentStripped, GuildTransformer guild) {
String words = contentStripped.toLowerCase();
List <String> badWordsList = replace(guild.getBadWordsWildcard());
//System.out.println("UFWords: " + words);
//System.out.println("FWords: " + badWordsList);
for (String word : badWordsList) {
if (words.contains(word)) {
return true;
}
}
return false;
}
我目前有这个代码:
private boolean checkWildcardFilter(String contentStripped, GuildTransformer guild) {
String words = contentStripped.toLowerCase();
List <String> badWordsList = replace(guild.getBadWordsWildcard());
System.out.println("UWords: " + words);
System.out.println("FWords: " + badWordsList);
return words.stream().anyMatch(badWordsList::equals);
}
示例中apple和hi应该被过滤
我想让它做的是检查句子“我会去吃一个盛大的苹果和我的新 hire ”。无论是在句子中的哪个位置,它都需要找到单词“apple”和“hi”。如果找到它,它应该过滤
它在 Java 中,单词来自数据库:database entry
它解码为:(一些脏话)
["***", "***", "***", "***"]
我认为您需要的是检查字符串是否包含任何字符序列。
如果它来自数据库,您将需要使用适当的 queries/DB connection/etc..
检索您想要的那些如果关键字被加密,您将必须对其进行解密。有几个解密库,你只需要知道"what"你说的语言
正如@Clashsoft 所提到的,您要在此处解决多个问题。建议将它们分成 3 个,这样你就有很多 objective 个问题。
对于字符串位置,可以使用这个依赖:
可以在类似的问题上找到更多详细信息:
How do I check if a string contains a list of characters?
我目前有一些可以使用的东西,但我正在寻求改进,我可以做些什么来改进它?
我有东西可以用;
private boolean checkWildcardFilter(String contentStripped, GuildTransformer guild) {
String words = contentStripped.toLowerCase();
List <String> badWordsList = replace(guild.getBadWordsWildcard());
//System.out.println("UFWords: " + words);
//System.out.println("FWords: " + badWordsList);
for (String word : badWordsList) {
if (words.contains(word)) {
return true;
}
}
return false;
}