碎破星空 2017-03-16 07:29 采纳率: 0%
浏览 661
已结题

Lucene3.0显示高亮的问题

    public Map<String, Object> displayHtmlHighlight(String queryString, Analyzer analyzer, int fragmentSize, Content con) throws IOException, InvalidTokenOffsetsException, ParseException{
         Map<String, Object> map = new HashMap<>();
         map.put("id", con.getId());
         System.out.println("原始的标题-----------------"+con.getTitle());
        QueryParser qp = new QueryParser(Version.LUCENE_30, "title", analyzer);
        Query query = qp.parse(queryString);
        Highlighter highlighter = new Highlighter(new SimpleHTMLFormatter("<font color='red'>", "</font>"), new QueryScorer(query));
        Fragmenter fragmenter = new SimpleFragmenter(fragmentSize);
        highlighter.setTextFragmenter(fragmenter);
        String title = highlighter.getBestFragment(analyzer, "title", con.getTitle());
        map.put("title", title);
        System.out.println("改动后的标题--------------"+title);
        System.out.println("原始的内容-----------------"+con.getTxt());
        String content = highlighter.getBestFragment(analyzer, "content", con.getTxt());
        System.out.println("--改动后的内容----"+content);
        map.put("content", content);
        System.out.println(map.toString());
        return map;
    }

我的标题:我的滑板鞋时尚,queryString = 我的 ,fragmentSize设置为200
但是: String title = highlighter.getBestFragment(analyzer, "title", con.getTitle());这个报错了,queryString为一个字就正确,两个字以上就报错了,求大神解惑。

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥30 求一段fortran代码用IVF编译运行的结果
    • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
    • ¥15 lammps拉伸应力应变曲线分析
    • ¥15 C++ 头文件/宏冲突问题解决
    • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
    • ¥50 安卓adb backup备份子用户应用数据失败
    • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
    • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
    • ¥30 python代码,帮调试,帮帮忙吧
    • ¥15 #MATLAB仿真#车辆换道路径规划