‘壹’ 用java读取文档并分词。
需要commons-io包,或者自己写读文件的部分
importjava.io.File;
importjava.io.IOException;
importjava.util.ArrayList;
importjava.util.Collections;
importjava.util.Comparator;
importjava.util.List;
importjava.util.regex.Matcher;
importjava.util.regex.Pattern;
importorg.apache.commons.io.FileUtils;
publicclassTest20{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
Stringstr=null;
try{
str=FileUtils.readFileToString(newFile("e.txt"));
}catch(IOExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
Patternp=Pattern.compile("\b[\w-']+\b");
Matcherm=p.matcher(str);
List<Word>words=newArrayList<Word>();
while(m.find()){
add(words,m.group().trim());
}
Collections.sort(words,newComparator<Word>(){
@Override
publicintcompare(Wordo1,Wordo2){
//TODOAuto-generatedmethodstub
returno1.getWord().compareTo(o2.getWord());
}});
System.out.println(words);
}
privatestaticvoidadd(List<Word>words,Stringword){
//TODOAuto-generatedmethodstub
for(Wordtemp:words){
if(temp.getWord().equals(word)){
temp.setCount(temp.getCount()+1);
return;
}
}
Wordw=newWord();
w.setWord(word);
words.add(w);
}
}
classWord{
privateStringword;
privateintcount=1;
publicStringgetWord(){
returnword;
}
publicvoidsetWord(Stringword){
this.word=word;
}
publicintgetCount(){
returncount;
}
publicvoidsetCount(intcount){
this.count=count;
}
@Override
publicStringtoString(){
return"Word[word="+word+",count="+count+"]";
}
}
‘贰’ 用java怎么写出算一段英文单词总数和每个单词出现的次数
importjava.util.*;
importjava.util.regex.*;
publicclassYugi{
publicstaticvoidmain(String[]args){
Stringwords="Lookbuddy,,,Icanguaranteethatyouwin.";
Stringreg="[a-zA-Z]+";
Patternp=Pattern.compile(reg);
Matcherm=如州p.matcher(words);
HashMap<String,Integer>map=new配碧HashMap<String,Integer>();
intcount=0;
while(m.find()){
count++;
Stringw=m.group();
if(null==map.get(w)){
map.put(w,1);
渣卖蔽}else{
intx=map.get(w);
map.put(w,x+1);
}
}
System.out.println(count);
System.out.println(map);
}
}
‘叁’ 用java或c编写,给定包含所有单词的英文字典,将一串英文字母分割成句子
这个不斗模好实现吧,就你那个例子同时它可以分成 "thisis atest".
而且网络翻辩袜译那些软件携销激,句子的单词之间也是需要空格隔开的。
‘肆’ java word分词器怎样安装在java中
word分词是一个Java实现的分布式的中文分词组件,提供了多种基于词典的分词算法,并利用ngram模型来消除歧义。
如果需要安装word分词器可以参考下面的步骤:
JDK官网:http://www.oracle.com/technetwork/java/javase/downloads/index.html
Eclipse官网:http://www.eclipse.org
打开word分词器的官方github主页:https://github.com/ysc/word
导入成功之后就可以在自己的项目中使用word分词器了。
‘伍’ java中文分词为什么用“ik”
为什么呢?因为Lucene自带的分词器比较适合英文的分词,而IK首先是一个中文的分词器。x0dx0a具体的优点先不细说,单说分词的结果来看:x0dx0ax0dx0a1 比如说 我爱北京枣兄x0dx0ax0dx0a使用自带的分词 我/爱/北/京x0dx0aIK分词 我/爱/北京x0dx0a2 可以自己扩展词典x0dx0a有很多分词器是不能够进行自己扩展词典的,有自己的词典,导致分词的结果才是自己想凳旁袭要的结果。x0dx0a3 可以自己定义停用词字典x0dx0a4 和Lucene结合比较高,有很多封装好启乱的模块。用来检索非常顺手。x0dx0a当然,IK自2012年已经不再维护了。后面有出现了很多其他的分词器。
‘陆’ java用什么分词器去 标注英文单词的词性
可宴闷亩以试试stanford Tagger, 网络搜索下stanford Tagger。
中文晌森罩昌词性标注可以用hanlp.
‘柒’ java语言编写一个String的分词程序,功能就是计算输入英文句子的单词个数
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Danci {
public static void main(String[] args){
String str = new String();
System.out.print("请输入一个英文句子:");
try{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));//获取键盘输入
str = br.readLine();
}catch(IOException e){
e.printStackTrace();
}
String []s = str.split(" ");//转换成数组
System.out.println("你伍粗输入的句子共有腊橘枣单词 "+s.length+" 个");//s.length获取数组长度
}
}
//轮拆此程序只能获取一句话的单词个数.
‘捌’ java jieba分词怎么用
网页链接这个网站
成功了,可喜可贺。
‘玖’ 谁来推荐一个JAVA的分词工具
java读取中文分词工具:linger
Java开源中文分词器
1、word分词器
2、Ansj分词器
3、Stanford分词器
4、FudanNLP分词器
5、Jieba分词器
6、Jcseg分词器
7、MMSeg4j分词器
8、IKAnalyzer分词器
9、Paoding分词器
10、smartcn分词器
‘拾’ java如何分词
如果你的分词规则是在一个字符串的开头和结尾加上"_",然后两个字符一分的话,代码可以这样写:
import java.util.ArrayList;
import java.util.List;
public class Participle
{
private static final String HEAD_END_STR = "_";
private static final int PARTICIPLE_LENGTH = 2;
public static void main(String[] args)
{
String exampleWord = "计算机";
exampleWord = "_" + exampleWord + "_";
int length = exampleWord.length();
List<String> result = new ArrayList<String>();
for (int i = 0; i < length - 1; i++)
{
String str = exampleWord.substring(i, i + PARTICIPLE_LENGTH);
result.add(str);
}
System.out.println(result);
}
}
输出结果:_计, 计算, 算机, 机_