gpt4 book ai didi

java - 比较两个字符串的元素java

转载 作者:行者123 更新时间:2023-11-30 08:02:24 25 4
gpt4 key购买 nike

我想检查一个字符串是否在另一个字符串中包含特定长度的字符序列,例如

String user1_hobbies = "friends, cinema/outside"
String user2_hobbies = "outside, going out with friends"
boolean check;

if (user1_hobbies.contains(user2_hobbies)){
check = true;
} else
{check = false
}

ofc 这种尝试是行不通的,因为整个字符串必须包含整个字符序列。我只想检查两个字符串是否只有部分匹配...在这种情况下它应该匹配,因为“朋​​友”或“外部”匹配。

最佳答案

按照@JBNizet 的提示,您可以为两个句子创建两组单词,然后检查两组之间的交集是否为非空:

Set<String> set1 = new HashSet<String>(Arrays.asList(user1_hobbies.split(" ")));
Set<String> set2 = new HashSet<String>(Arrays.asList(user2_hobbies.split(" ")));
set1.retainAll(set2);

if (set1.size() > 0) {
System.out.println("There was a match.");
}
else {
System.out.println("There were no matches.");
}

您可能希望先删除您可能拥有的所有无关标点符号,例如逗号或斜杠。在您的实际问题中,可能还需要做更多的工作。

关于java - 比较两个字符串的元素java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36968797/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com