首页 > 代码库 > Java机械分词
Java机械分词
这是我们做的一个小作业,不多说
直接附上我写的代码:
public void Zheng() { try { BufferedReader bre = null; //String file = "d.txt"; String file = "Dict.txt"; bre = new BufferedReader(new FileReader(file)); String line; try { while ((line = bre.readLine()) != null) // 判断最后一行不存在,为空结束循环 { temp.add(line); // System.out.println(line);// 原样输出读到的内容 } bre.close(); } catch (IOException e) { e.printStackTrace(); } } catch (FileNotFoundException e) { System.out.println("未成功读取文件"); e.printStackTrace(); } String sub_str; while (start < total_len) { boolean flag = false; tmp_len = start + max_len <= total_len ? max_len : total_len - start; label: while (tmp_len > 0) { // System.out.println(1); sub_str = receive.substring(start, start + tmp_len); // System.out.println(sub_str); for (i = 0; i < temp.size(); i++) { if (sub_str.equals(temp.get(i))) { flag = true; } } if (flag == true) { words.add(receive.substring(start, start + tmp_len)); start = start + tmp_len; break label; } else { tmp_len = tmp_len - 1; // System.out.println(tmp_len); } /* * if sub_str in dict: words.append(setence[start : start + * tmp_len]) start = start + tmp_len break else: tmp_len = * tmp_len -1 */ } if (tmp_len == 0) { words.add(receive.substring(start, start + 1)); start = start + 1; } }
效果就是按照词库中的词将一段语句分割开来。
附上词库的位置:
https://pan.baidu.com/s/1pLBKer5
Java机械分词
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。