使用Java正則表達式 和HashMap(哈希表)統計一篇文章中的每個單詞出現的次數(去除標點符號和空格)
import java.io.BufferedReader;
import java.io.File; import java.io.FileReader; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Set; import java.util.Map.Entry; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Main { public static void Count(File file){ String str =""; String result = ""; try { BufferedReader bufferedReader = new BufferedReader(new FileReader(file)); while((str = bufferedReader.readLine())!=null){ result = result+str; } bufferedReader.close(); } catch (Exception e) { // TODO: handle exception } System.out.println(result); Map map = new HashMap(); Pattern p = Pattern.compile("[, . ; ! ? ]"); Matcher m = p.matcher(result); String [] strs = p.split(result); for(int i=0;i me = (Entry) it.next(); if((int) me.getValue()=max&&!((String) me.getKey()).equals("")){ max = (int) me.getValue(); maxWord = (String) me.getKey(); } System.out.println(me.getKey()+":"+me.getValue()); } System.out.println("出現次數最多的是"+":"+max+" ? "+maxWord); } private void println(Map map){ Set set = map.entrySet(); Iterator it = set.iterator(); while(it.hasNext()){ Entry entry = (Entry) it.next();? String key = entry.getKey(); int value = entry.getValue(); } } public static void main(String[] args){ File file = new File("C:/Users/Administrator/Desktop/james.txt"); Count(file); } }
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态