比较段落中的某些字符串(句子的一部分)

迪彭德拉·波卡雷尔

我有地图,

HashMap<String,String> dataCheck= new HashMap<String,String>();
dataCheck.put("Flag1","Additional Income");
dataCheck.put("Flag2","Be your own boss");
dataCheck.put("Flag3","Compete for your business");

和一段。

String paragraph = "When you have an additional Income, you can be your
 own boss. So advertise with us and compete for your business. We help 
 you get additional income";

所以我想要实现的是对于Hashmap的每个成员,我想将它与段落进行比较并找到重复的次数。匹配我的输出必须如下:

标志 1 - 2、标志 2 - 1、标志 3 - 1

所以,基本上,我只想了解如何将某个字符串与另一组字符串进行比较。

更新:匹配将不区分大小写。

和风

您可以使用循环 withString.indexOf()来计算出现次数。

在下面的代码中,您将看到我们循环遍历我们的HashMap每个条目并将其与我们的paragraph.

    HashMap<String, String> dataCheck = new HashMap<String, String>();
    dataCheck.put("Flag1", "Additional Income");
    dataCheck.put("Flag2", "Be your own boss");
    dataCheck.put("Flag3", "Compete for your business");

    String paragraph = "When you have an additional Income, you can be your own boss. So advertise with us and compete for your business. We help you get additional income";

    // Now, iterate through each entry in the Map
    for (Map.Entry<String, String> entry : dataCheck.entrySet()) {

        // Keep track of the number of occurrences
        int count = 0;

        // After finding a match, we need to increase our index in the loop so it moves on to the next match
        int startingIndex = 0;

        // This will convert the strings to upper case (so our matches are case insensitive
        // It will continue looping until we get an an indexOf == -1 (which means no match was found)
        while ((startingIndex = paragraph.toUpperCase().indexOf(entry.getValue().toUpperCase(), startingIndex)) != -1) {

            // Add to our count
            count++;

            // Move our index position forward for the next loop
            startingIndex++;
        }

        // Finally, print out the total count per Flag
        System.out.println(entry.getKey() + ": " + count);
    }

结果如下:

Flag1: 2
Flag2: 1
Flag3: 1

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章