java识别一篇文章中某单词出现个数的方法

 更新时间:2015年10月12日 12:34:55   作者:张庚  
这篇文章主要介绍了java识别一篇文章中某单词出现个数的方法,涉及java字符解析操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了java识别一篇文章中某单词出现个数的方法。分享给大家供大家参考。具体如下:

1. java代码:

import java.io.DataInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.StringTokenizer;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Select {
  public static void main(String[] args) {
    int num = 0;
    //定义:字节读取流
    FileInputStream fis;
    try {
      //此处的路径需要根据具体情况来进行修改
      fis = new FileInputStream("H:\\TankWar1.9\\src\\Tank.java");
      DataInputStream dis = new DataInputStream(fis);
      String line = null;
      while ((line = dis.readLine()) != null) {
        //创建字符解析器
         StringTokenizer st=new StringTokenizer(line,"!&(){}+-= ':;<> /");
         while(st.hasMoreTokens()) { 
           String string=st.nextToken();
           if(string.equals("if")) { num++; } }
        ;
      }
    } catch (FileNotFoundException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }
    System.out.println(num);
  }
}

2. Select.java:

import java.io.DataInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.StringTokenizer;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Select {
  public static void main(String[] args) {
    int num = 0;
    //定义:字节读取流
    FileInputStream fis;
    try {
      fis = new FileInputStream("H:\\TankWar1.9\\src\\Tank.java");
      DataInputStream dis = new DataInputStream(fis);
      String line = null;
      while ((line = dis.readLine()) != null) {
        //创建字符解析类
         StringTokenizer st=new StringTokenizer(line,"!&(){}+-= ':;<> /");
         while(st.hasMoreTokens()) { 
           String string=st.nextToken();
           if(string.equals("if")) { num++; } }
        ;
      }
    } catch (FileNotFoundException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }
    System.out.println(num);
  }
}

3. StringTokenizerDemo.java:

import java.util.*;
public class StringTokenizerDemo
{
  public static void main(String[] args)
  {
      String str1 = "Hello world!This is Java code,stringTokenizer Demo.";
      //声明并初始化字符串str1
      String str2 = "How to use StringTokenizer?StringTokenizer?";
      //声明并初始化字符串str2
      StringTokenizer strT1 = new StringTokenizer(str1," ,.!");
      //创建StringTokenizer类的对象strT1,并构造字符串str1的分析器
      //以空格符、","、"."及"!"作为定界符
      StringTokenizer strT2 = new StringTokenizer(str2," ?");
      //创建StringTokenizer类的对象strT2,并构造字符串str2的分析器
      //以空格符及"?"作为定界符
      int num1 = strT1.countTokens();
      //获取字符串str1中语言符号的个数
      int num2 = strT2.countTokens();
      //获取字符串str2中语言符号的个数
      System.out.println("str1 has "+num1+" words.They are:");
      while(strT1.hasMoreTokens())
      {  //利用循环来获取字符串str1中下一个语言符号,并输出
          String str = strT1.nextToken();
          System.out.print("\""+str+"\" ");
      }
      System.out.println("\nstr2 has "+num2+" words.They are:");
      while(strT2.hasMoreTokens())
      {  //利用循环来获取字符串str2中下一个语言符号,并输出
          String str = strT2.nextToken();
          System.out.print("\""+str+"\" ");
      }
  }
}

希望本文所述对大家的java程序设计有所帮助。

相关文章

  • Spring Boot实战之发送邮件示例代码

    Spring Boot实战之发送邮件示例代码

    本篇文章主要介绍了Spring Boot实战之发送邮件示例代码,具有一定的参考价值,有兴趣的可以了解一下。
    2017-03-03
  • Activiti常用类简介

    Activiti常用类简介

    这篇文章主要介绍了Activiti常用类,需要的朋友可以参考下
    2014-08-08
  • JavaWeb学习笔记分享(必看篇)

    JavaWeb学习笔记分享(必看篇)

    下面小编就为大家带来一篇JavaWeb学习笔记分享(必看篇)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • java 重试框架 sisyphus 入门介绍

    java 重试框架 sisyphus 入门介绍

    sisyphus 综合了 spring-retry 和 gauva-retrying 的优势,使用起来也非常灵活,本文给大家介绍java 重试框架 sisyphus 入门相关知识,感兴趣的朋友一起看看吧
    2021-10-10
  • Java设计模式之监听器模式实例详解

    Java设计模式之监听器模式实例详解

    这篇文章主要介绍了Java设计模式之监听器模式,结合实例形式较为详细的分析了java设计模式中监听器模式的概念、原理及相关实现与使用技巧,需要的朋友可以参考下
    2018-02-02
  • Java函数式编程(十二):监控文件修改

    Java函数式编程(十二):监控文件修改

    这篇文章主要介绍了Java函数式编程(十二):监控文件修改,本文是系列文章的第12篇,其它文章请参阅本文底部的相关文章,需要的朋友可以参考下
    2014-09-09
  • 用递归查找有序二维数组的方法详解

    用递归查找有序二维数组的方法详解

    本篇文章是对用递归查找有序二维数组的方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • MybatisPlus分页失效不起作用的解决

    MybatisPlus分页失效不起作用的解决

    在使用MybatisPlus的selectPage时发现分页不起作用,每次返回的都是全部的数据,本文就来介绍一下MybatisPlus分页失效不起作用的解决,感兴趣的可以了解一下
    2024-03-03
  • Java 8 中 Function 接口使用方法介绍

    Java 8 中 Function 接口使用方法介绍

    这篇文章主要介绍了Java 8中 Function接口使用方法介绍,Java8中提供了一个函数式接口Function,这个接口表示对一个参数做一些操作然后返回操作之后的值
    2022-06-06
  • Spring Data Elasticsearch 5.x实现单词纠错和自动补全

    Spring Data Elasticsearch 5.x实现单词纠错和自动补全

    这篇文章主要为大家介绍了Spring Data Elasticsearch 5.x实现单词纠错和自动补全示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08

最新评论