如何在另一个字符串的末尾找到带有多余单词的不同字符串?

用户261002

我试图对照词汇表列表检查java字符串,然后如果它找到了词汇表列表中存在的术语,则用标签包装该术语。但是问题是,如果我在词汇表列表中有两个术语:“ Sprint”和“ Sprint 0”,则代码仅选择Sprint术语,而忽略了“ Sprint 0”。

这是我的代码

    private String findGlassayTerms(String response, List<Glossary> glossary) {
    for (Glossary item : glossary) {
        // check if response contains the term
        if (StringUtils.contains(response, item.getTerm())) {
            System.out.println(item.getTerm());
            response = StringUtils.replace(response, item.getTerm(), "<span class=" + item.getTerm() + ">" + item.getTerm() + "</span>");

        }
    }

    return response;
}

结果如下:

<span class=Sprint>Sprint</span> 0 is typically a one or two week period at the end of the Define phase. <br>In summary, <span class=Sprint>Sprint</span> 0 provides an opportunity.
艾略特·新鲜

如果List<Glossary> glossary按术语长度(最长的术语在前)排序,则当前代码应该可以正常工作。另一种解决方案是建立所有匹配项的列表,然后遍历所有匹配项以“打分”正确的匹配项。接下来,我认为您应该将方法重命名为findGlossaryTerms(而不是findGlassayTerms)。最后,这种排序(在代码中)可能是这样的-

Collections.sort(glossary, new Comparator<Glossary>() {
    public int compare(Glossary a, Glossary b) {
        if (a == null) {
            if (b == null) {
                return 0;
            }
            return -1;
        } else if (b == null) {
            return 1;
        }
        int av = (a.getTerm() != null) ? a.getTerm().length() : 0;
        int bv = (b.getTerm() != null) ? b.getTerm().length() : 0;
        return Integer.valueOf(bv).compareTo(av);
    }
});

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用getch后如何在另一个字符串的末尾连接一个字符串

来自分类Dev

如何在Objective-C的另一个字符串中搜索带有空格的字符串?

来自分类Dev

如何尽快找到另一个字符串中的特定字符串?

来自分类Dev

如何返回在另一个字符串中找到的字符串的索引?

来自分类Dev

删除另一个字符串中带有{{xxx}}的字符串

来自分类Dev

如何在clob中找到一个特定的字符串,它的前缀是另一个字符串

来自分类Dev

如何在现有字符串表字段中添加另一个字符串和另一个字符串

来自分类Dev

如何在matlab中将字符串的值赋予另一个字符串

来自分类Dev

如何在jquery中的另一个字符串中间附加一个字符串变量?

来自分类Dev

如何在Lua中的另一个字符串中插入一个字符串?

来自分类Dev

如何在另一个字符串的x位置插入一个字符串?

来自分类Dev

如何在Shell中获取另一个字符串中一个字符串的行号

来自分类Dev

在文件中找到一个字符串,然后找到上面的第一行,其中包含带有bash的另一个字符串

来自分类Dev

字符串中的单词等于另一个字符串中的单词排列

来自分类Dev

在java中,如何在字符串中查找单词并将其复制到另一个字符串变量中?

来自分类Dev

为另一个字符串的子字符串创建一个新的字符串是否多余?

来自分类Dev

如何在C中递归地找到另一个字符串中的字符串位置?

来自分类Dev

如何在C中递归地找到另一个字符串中的字符串位置?

来自分类Dev

如何从另一个字符串中删除所有出现的带有`/`的字符串

来自分类Dev

如何在字符串末尾附加一个字符?

来自分类Dev

如何将带有另一个字符串枚举的键的枚举传递给接受字符串的函数?

来自分类Dev

在另一个字符串中的某个单词之前插入字符串

来自分类Dev

使用PHP从另一个字符串返回预选单词的字符串

来自分类Dev

用另一个字符串替换字符串中的单词 - Javascript

来自分类Dev

如何在Java中将某个单词从一个字符串复制到另一个字符串

来自分类Dev

Powershell在找到另一个字符串后提取字符串

来自分类Dev

Powershell在找到另一个字符串后提取字符串

来自分类Dev

检查一个字符串是否具有另一个字符串的所有字符

来自分类Dev

为另一个字符串的子字符串创建新的字符串是否多余?

Related 相关文章

  1. 1

    使用getch后如何在另一个字符串的末尾连接一个字符串

  2. 2

    如何在Objective-C的另一个字符串中搜索带有空格的字符串?

  3. 3

    如何尽快找到另一个字符串中的特定字符串?

  4. 4

    如何返回在另一个字符串中找到的字符串的索引?

  5. 5

    删除另一个字符串中带有{{xxx}}的字符串

  6. 6

    如何在clob中找到一个特定的字符串,它的前缀是另一个字符串

  7. 7

    如何在现有字符串表字段中添加另一个字符串和另一个字符串

  8. 8

    如何在matlab中将字符串的值赋予另一个字符串

  9. 9

    如何在jquery中的另一个字符串中间附加一个字符串变量?

  10. 10

    如何在Lua中的另一个字符串中插入一个字符串?

  11. 11

    如何在另一个字符串的x位置插入一个字符串?

  12. 12

    如何在Shell中获取另一个字符串中一个字符串的行号

  13. 13

    在文件中找到一个字符串,然后找到上面的第一行,其中包含带有bash的另一个字符串

  14. 14

    字符串中的单词等于另一个字符串中的单词排列

  15. 15

    在java中,如何在字符串中查找单词并将其复制到另一个字符串变量中?

  16. 16

    为另一个字符串的子字符串创建一个新的字符串是否多余?

  17. 17

    如何在C中递归地找到另一个字符串中的字符串位置?

  18. 18

    如何在C中递归地找到另一个字符串中的字符串位置?

  19. 19

    如何从另一个字符串中删除所有出现的带有`/`的字符串

  20. 20

    如何在字符串末尾附加一个字符?

  21. 21

    如何将带有另一个字符串枚举的键的枚举传递给接受字符串的函数?

  22. 22

    在另一个字符串中的某个单词之前插入字符串

  23. 23

    使用PHP从另一个字符串返回预选单词的字符串

  24. 24

    用另一个字符串替换字符串中的单词 - Javascript

  25. 25

    如何在Java中将某个单词从一个字符串复制到另一个字符串

  26. 26

    Powershell在找到另一个字符串后提取字符串

  27. 27

    Powershell在找到另一个字符串后提取字符串

  28. 28

    检查一个字符串是否具有另一个字符串的所有字符

  29. 29

    为另一个字符串的子字符串创建新的字符串是否多余?

热门标签

归档