Я знаю, что подобный вопрос задавался ранее, однако я не могу найти ответ на мою проблему!
Я сравниваю массивы и извлекаю сходства с помощью HashSet.
final String[] abc = nlp_text.split(" ");
final String[] xyz = getResources().getStringArray(R.array.xyz);
final HashSet<String> set = new HashSet<>();
for(String a : abc) set.add(a.toLowerCase());
final HashSet<String> set1 = new HashSet<>();
for(String a : xyz) set1.add(a.toLowerCase());
set.retainAll(set1);
String[] pqr= {};
pqr = set.toArray(pqr);
Это работает для строк из одного слова, но не работает для строк из двух слов. Например, строки «Джон» и «Доу» будут распознаваться отдельно, а «Джон Доу» - нет.
есть идеи почему?
ОБНОВЛЕНИЕ: как мне было указано, это проблема nlp_text.split (""). Однако, когда я попытался разбить его на «,», а затем на все остальные метки, он не распознал ни одну из строк. возврат будет просто пустым ... помогите, пожалуйста!