词频统计-part2
看到这个问题为之一愣,这简单多了,在第一部分的基础上把那些存储结构删了,把排序算法删了,设置一个变量,遇到则加一,直到读到文件尾。最后输出单词出现次数。
程序比较简单也比较,下面就把程序贴出来:
package note1;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.*;
import java.util.regex.*;
import java.util.Comparator; public class part2 { public static void main(String[] args)
{ //input
Map<String,Integer> numcount=new HashMap<String,Integer>();
Pattern pat=Pattern.compile("\\b[A-Za-z][A-Za-z0-9]*\\b"); String filename="";
String keyWord="";
int count=0; for(int i=0;i<args.length-1;i++)
{
if(args[i].equals("-f"))
{
filename+=args[i+1];
}
else if(args[i].equals("-w"))
{
keyWord+=args[i+1];
}
} try{
BufferedReader in=new BufferedReader(new FileReader(filename)); //process
String temp;
while((temp=in.readLine())!=null)
{
Matcher mth=pat.matcher(temp);
boolean tf=mth.find();
while(tf)
{
String buffer=mth.group().toLowerCase();
if(buffer.equals(keyWord.toLowerCase()))
{
count+=1;
}
tf=mth.find();
}
}
in.close(); //output
System.out.println("keyword "+keyWord+" occurred "+count+" times !"); }catch(FileNotFoundException e)
{
System.out.println("Cannot find the specified file");
}
catch(IOException e)
{
System.out.println(e.getMessage());
} }
}
运行结果:
如果想要的是这种方式的话:
Over.
词频统计-part2的更多相关文章
- 作业3-个人项目<词频统计>
上了一天的课,现在终于可以静下来更新我的博客了. 越来越发现,写博客是一种享受.来看看这次小林老师的“作战任务”. 词频统计 单词: 包含有4个或4个以上的字 ...
- C语言实现词频统计——第二版
原需求 1.读取文件,文件内包可含英文字符,及常见标点,空格级换行符. 2.统计英文单词在本文件的出现次数 3.将统计结果排序 4.显示排序结果 新需求: 1.小文件输入. 为表明程序能跑 2.支持命 ...
- c语言实现词频统计
需求: 1.设计一个词频统计软件,统计给定英文文章的单词频率. 2.文章中包含的标点不计入统计. 3.将统计结果以从大到小的排序方式输出. 设计: 1.因为是跨专业0.0···并不会c++和java, ...
- 软件工程第一次个人项目——词频统计by11061153柴泽华
一.预计工程设计时间 明确要求: 15min: 查阅资料: 1h: 学习C++基础知识与特性: 4-5h: 主函数编写及输入输出部分: 0.5h: 文件的遍历: 1h: 编写两种模式的词频统计函数: ...
- python瓦登尔湖词频统计
#瓦登尔湖词频统计: import string path = 'D:/python3/Walden.txt' with open(path,'r',encoding= 'utf-8') as tex ...
- Hadoop上的中文分词与词频统计实践 (有待学习 http://www.cnblogs.com/jiejue/archive/2012/12/16/2820788.html)
解决问题的方案 Hadoop上的中文分词与词频统计实践 首先来推荐相关材料:http://xiaoxia.org/2011/12/18/map-reduce-program-of-rmm-word-c ...
- pyspark进行词频统计并返回topN
Part I:词频统计并返回topN 统计的文本数据: what do you do how do you do how do you do how are you from operator imp ...
- 使用storm分别进行计数和词频统计
计数 直接上代码 public class LocalStormSumTopology { public static void main(String[] agrs) { //Topology是通过 ...
- jieba库分词词频统计
代码已发至github上的python文件 词频统计结果如下(词频为1的词组数量已省略): {'是': 5, '风格': 4, '擅长': 4, '的': 4, '兴趣': 4, '宣言': 4, ' ...
随机推荐
- java的按值传递与按引用传递
还是比较混乱 主要看怎么理解了 java没有指针一说是因为jvm将指针给隐藏了起来 说到底还是靠地址 按值传递显然直接将内存空间的内容传递给对方 之后再与传递者无关 引用是在栈空间建一个堆空间对象的映 ...
- 常见的加密和解密算法—DES
一.DES加密概述 DES全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法,1977年被美国联邦政府的国家标准局确定为联邦资料处理标准(FIPS),并 ...
- 20190313_C#反转绘制字符串
效果图: 代码: private void button7_Click(object sender, EventArgs e) { Point p = new Point(10,10); Graphi ...
- C++中的STL中map用法详解(转)
原文地址: https://www.cnblogs.com/fnlingnzb-learner/p/5833051.html C++中的STL中map用法详解 Map是STL的一个关联容器,它提供 ...
- python3.6 实现AES加密的示例(pyCryptodome)
当然我也是通过官方推荐,使用下面命令去下载安装的,pip就是好用... pip install pycryptodome 撸码开始 废话不多说,直接上demo # from Crypto.Has ...
- shell编程: 获得目录下(包括子目录)所有文件名,路径和文件大小
转自:http://blog.chinaunix.net/uid-26000296-id-3575475.html function ergodic(){ ` do "/"$fil ...
- python 主要模块和方法
******************** PY核心模块方法 ******************** os模块: os.remove() 删除文件 os.unlink() 删除文件 os.rename ...
- FDStoredProc 存储过程控件 强
//FireDAC FDStoredProc1->StoredProcName = "myReport1"; FDStoredProc1->Prepare(); FDS ...
- $(function(){})理解
$(function(){}) = jQuery(function(){}) = jQuery(document).ready(function(){ });
- 前端开发之jQuery位置属性和筛选方法
主要内容: 1.jQuery的位置属性及实例 (1)位置属性 (2)实例 --- 仿淘宝导航栏 2.jQuery的筛选方法及实例 (1)筛选方法 (2)实例一:嵌套选项卡 (3)实例二:小米官网滑动 ...