跳至主要內容

代码段

bug君小于 1 分钟

1. 正则匹配

    private List<String> extractKeywords(String title) {
        List<String> keywords = new ArrayList<>();
        
        // 匹配关键词的正则表达式
        String regex = "\\b(?:and|or|not|\\(|\\))+\\b";
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(title);
        // 用空格替换所有逻辑运算符和括号
        String cleanTitle = matcher.replaceAll(" ");
        // 拆分字符串并添加到关键词列表中
        String[] words = cleanTitle.split("\\s+");
        for (String word : words) {
            if (!word.isEmpty()) {
                keywords.add(word);
            }
        }
        
        return keywords;
    }

上次编辑于: