导航:首页 > 编程语言 > java文本分析

java文本分析

发布时间:2023-03-15 16:12:22

『壹』 java中的文本分析

BufferedReader br = new BufferedReader(new FileReader(要找的文件路径));
StringBuffer sb = br.readLine();
Pattern pattern = pattern.compile("(//d{3})(//d{3})(//d{1})(//d{10})");
Matcher m = pattern.matcher(sb);
while(m.find()) {
System.out.println(m.group());
}

可能不是您要的解决方法。不过大多数查找数据都是这个思路。

『贰』 有人用java写过文本分类系统

文本分类的重点不在分类,而在怎么样描述文本模型和提取文档中的terms并把它数字化,转化为分类器可以使用的输入类型。这前面的处理直接关系到后面分分类效果。就文本模型而言,现在普遍使用的还是Salton 和 McGill的Vector Space Model, 通过TF-IDF统计,如果是英文的话,要进行语义层次的抽象, 这方面可以使用wordNet,网上可以找到JAVA wordnet 的API,,个人认为比较好的是JWNL 如果是中文的话,涉及到分词, 中科院计算所分词系统ICTCLAS, 可到其网站上下载免费版。
至于JAVA写的分类器很多,常用的比如说Weka, RapidMiner(这个相当不错,有专门的Web data Mining的扩展包,是我的最爱),这些都可以自己调用其接口实现新的算法。个人强烈推荐使用RapidMiner,功能相当强大,几乎实现了当前的所有机器学习的算法,并且操纵简便。
学习提示:不要刚开始就希望效果很好,急躁是做学问的大敌,肯定会出现一些意想不到的问题,最主要是勤于思考,善于查找问题,慢慢改进,一个问题,如果比较难,回到它最原始最简单的问题上去。祝你学业进步。

『叁』 关于java正则表达式解析文本

交易数据的正则是
^\\s+\\d+\\s+\\d+$
说下思路,逐行处理
如果读到了买入,那直到读到卖出为止,所有匹配上面正则的行都按买入的方式处理
如果读到卖出,那直到读到买入为止,所有匹配上面正则的行都按卖出的方式处理

『肆』 java源代码分析 实在是不太会,求高手教教我。

packagetest2;

importjava.io.BufferedReader;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileOutputStream;
importjava.io.IOException;
importjava.io.InputStream;
importjava.io.InputStreamReader;
importjava.util.HashMap;
importjava.util.Map;
importjava.util.Set;

publicclassJavaCodeAnalyzer{
publicstaticvoidanalyze(Filefile)throwsIOException{
//FileOutputStreamfos=newFileOutputStream("F;"+File.separator+"result.txt");
if(!(file.getName().endsWith(".txt")||.getName().endsWith(".java"))){
System.out.println("输入的分析文件格式不对!");
}
InputStreamis=newFileInputStream(file);
BufferedReaderbr=newBufferedReader(newInputStreamReader(is));
Stringtemp;
intcount=0;
intcountSpace=0;
intcountCode=0;
intcountDesc=0;
Map<String,Integer>map=getKeyWords();
while((temp=br.readLine())!=null){
countKeys(temp,map);
count++;
if(temp.trim().equals("")){
countSpace++;
}elseif(temp.trim().startsWith("/*")||temp.trim().startsWith("//")){
countDesc++;
}else{
countCode++;
}
}
System.out.printf("代码行数:"+countCode+"占总行数的%4.2f ",(double)countCode/count);
System.out.printf("空行数:"+countSpace+"占总行数的%4.2f ",(double)countSpace/count);
System.out.printf("注释行数:"+countDesc+"占总行数的%4.2f ",(double)countDesc/count);
System.out.println("总行数:"+count);
System.out.println("出现最多的5个关键字是:");
System.out.println("");
System.out.println("");
System.out.println("");
System.out.println("");
System.out.println("");
}
publicstaticvoidmain(String[]args){
getKeyWords();
Filefile=newFile("F://Test.java");
try{
analyze(file);
}catch(IOExceptione){
//TODO自动生成catch块
e.printStackTrace();
}
}
publicstaticMap<String,Integer>getKeyWords(){
Map<String,Integer>map=newHashMap<String,Integer>();
String[]keywords={"abstract","assert","boolean","break","byte","case","catch","char","class","continue","default","do","double","else","enum","extends","final","finally","float","for","if","implements","import","instanceof","int","interface","long","native","new","package","private","protected","public","return","strictfp","short","static","super","switch","synchronized","this","throw","throws","transient","try","void","volatile","while","goto","const"};
for(Strings:keywords){
map.put(s,0);
}
returnmap;
}
publicstaticvoidcountKeys(Strings,Map<String,Integer>map){
Set<String>keys=map.keySet();
for(Stringss:keys){
if(s.indexOf(ss)!=-1){
map.put(ss,map.get(ss)+1);
}
}
}
}

上班没啥时间了,还有点没写完,你在想想。

『伍』 java 文本解析成List<map>集合

List<Map<String,String>>dataList=newArrayList<Map<String,String>>();
Map<String,String>dataMap=newHashMap<String,String>();
dataMap.put("interfacetime","2006-12-1100:37:38");
dataMap.put("ip","172.30.27.33");
dataMap.put("type","windows");
dataMap.put("patrolagenttime","2006-12-1100:37:38");
dataMap.put("NT_HEALTH/NT_HEALTH/ProcessorUtilization","-999.999");

//这里只是添加了一个map,你可以定回义多个map,按照上面的格式答,放入这个list就OK
dataList.add(dataMap);

『陆』 Java 文本处理问题

参考代码,细节可以适当修改

importjava.io.*;
importjava.util.*;

publicclassMyDemo{

publicstaticvoidmain(String[]args){
ArrayList<Integer>list=newArrayList<Integer>();
readNumInFile(list,"d:\File1.txt");//读取File1存入集合
readNumInFile(list,"d:\File2.txt");//读取File2存入集合
Collections.sort(list);//集合从大到小排序
writeNumToFile(list,"d:\File3.txt");//把集合写入到File3
}
publicstaticvoidreadNumInFile(ArrayList<Integer>list,StringfilePath){
BufferedReaderbuf=null;
try{
buf=newBufferedReader(newFileReader(filePath));
Stringstr;
String[]ss;
while((str=buf.readLine())!=null){
System.out.println(str);
ss=str.trim().split("");
for(Strings:ss){
list.add(Integer.parseInt(s));//向集合里添加元素
}
}
buf.close();
}catch(Exceptione){
e.printStackTrace();
}
}
(ArrayList<Integer>list,StringfilePath){
try{
//把集合的数据转成字符串
Stringstr="";
for(Integerx:list){
str=str+x+"";
}
System.out.println(str);
FileWriterfw=newFileWriter(filePath);
fw.write(str);//文本里写入字符串数据
fw.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
}

测试

186572
8802-5
-50122567888

『柒』 Java输入一个文本文件,里面是英文,然后进行词频分析,要将虚词剔除来,这个怎么实现啊

final String[] functionWords ={"on"掘基,"for"..,}
英文虚词也就那个几个,先写个数组把虚词都放进去
String[] array=String.split("告亏\n");
把文本按空格分开放到数组array里
用Map<String,int>来做词频分析,key是array的里的词,value是出现次数
拿array的每一个和map的key做比较,如果map中有,则value+1,如果没有袜散神则put(array[i],1);
关于剔除虚词,拿map的key和functionWords对比如果不相同则输出相应的key和value

『捌』 java解析txt里的数据

这个是文本流,先把文本读到内存中,再根据固定的格式去解析。按照换行解析
List<Student> list=new ArrayList<Student>();
String encoding = "GBK";

File file = new File("c:/test.txt");

if (file.isFile() && file.exists()) {
InputStreamReader read = new InputStreamReader( new FileInputStream(file), encoding);
BufferedReader bufferedReader = new BufferedReader(read);
String lineTXT = null;
while ((lineTXT = bufferedReader.readLine()) != null) {
String [] stuAttr=lineTXT.toString().split(",");
Student student=new Student();
//解析stuAttr数组封装Student对象
list.add(student);
}
read.close();
}else{
System.out.println("找不到指定的文件!");
}

『玖』 Java解析复杂文本

可以试试正则表达式,字符串split打散。

阅读全文

与java文本分析相关的资料

热点内容
word兼容包安装报错 浏览:528
iphone5s包装4g没有气孔 浏览:814
html包含文件代码吗 浏览:50
苹果appstore日本账号 浏览:532
解密dg加密的文件 浏览:206
gsh6什么格式文件 浏览:507
dnf85版本觉醒任务 浏览:998
范冰冰苹果百度云盘资源链接 浏览:507
数据库主机是什么系统 浏览:812
pdf表单教程 浏览:715
百度浏览器去更新安卓破解版 浏览:855
光盘内部应用程序错误 浏览:83
iphone6升级ios9步骤 浏览:873
魔力代码 浏览:497
win10打开局域网文件夹很卡 浏览:986
app收益怎么分 浏览:812
我的世界什么版本好玩 浏览:341
控制专硕如何报考编程 浏览:534
元祖在编程里是什么意思 浏览:491
小码王为什么比核桃编程贵 浏览:627

友情链接