我想在两个字符串中找到相同的单词。
startpoint = newresult.indexOf('\'');
endpoint = newresult.lastIndexOf('\'');
variables = newresult.substring(startpoint, endpoint);
variables = variables.replace("\r\n", ",");
variables = variables.replaceAll("'", "");`
字符串变量:
利弊,约翰,$,亚历克斯,MANAG;
字符串第二:
ins_manages(约翰,缺点)
如图所示,两个字符串都有约翰和缺点,我想检查两者是否有相同的字符序列,但我不知道如何检查它?有没有办法直接检查?
解决方案:
String [] newvar;
newvar = variables.split(",");
之后,我使用了for循环并逐个匹配它们。
BR
答案 0 :(得分:4)
拆分两个字符串并使用foreach比较各个单词,如下所示:
String first = "hello world today";
String second = "Yet another hello worldly day today";
//split the second string into words
List<String> wordsOfSecond = Arrays.asList(second.split(" "));
//split and compare each word of the first string
for (String word : first.split(" ")) {
if(wordsOfSecond.contains(word))
System.out.println(word);
}
答案 1 :(得分:0)
您的要求有点含糊不清。你要求在两个字符串中找到相同的单数字,然后你的样本要求在同一个字符串中找到两个单词。
要验证一个单词是否在两个字符串中,您可以这样做:
public boolean bothStringsContainWord(String s1, String s2, String word) {
return s1.contains(word) && s2.contians(word);
}
如果您需要在多个单词上执行此操作,可以将其置于循环中。同样,你的要求有点模糊;如果你理顺它们,可能存在一个更有效的解决方案。