62,623
社区成员
发帖
与我相关
我的任务
分享
import java.util.regex.*;
import javax.swing.JOptionPane;
public class WordCounter {
private static Pattern pat;
private static Matcher mat;
private static String matcher="thie Is a F5t fo jl'rw java,0%cover \n \t 个t fgt";
public static void main(String[] args){
// matcher=JOptionPane.showInputDialog("输入:");
String patern1="[A-z]+";
int count=0;
pat=Pattern.compile(patern1);
mat=pat.matcher(matcher);
while(mat.find()){count++;
System.out.print(mat.group()+" ");
}
System.out.println("\n"+count);
}
}
import java.util.*;
public class Test {
public static void main(String[] args) {
System.out.println("input your character:");
Scanner sc = new Scanner(System.in);
String str;
str = sc.nextLine();
StringTokenizer st = new StringTokenizer(str);
int num = st.countTokens();
String temp = null;
while(st.hasMoreTokens()) {
temp = st.nextToken();
System.out.println(temp);
}
System.out.println(num + " words!");
}
}
/**
* 读取输入的内容,并统计其单词的数量,并作简单输出.注意是以空格来统计单词数的。已经实现过滤空格,/n,/t
*/
package com.java.basic.exercise.ch2;
import java.util.Scanner;
/**
* @author johnston
*
* @version 2009-06-24
*/
public class CountWordNumber {
/**
* 从前台读取字符串,以"#"为结束标识
* @return
*/
public String readString() {
Scanner scanner = new Scanner(System.in);
System.out.println("Input content:");
StringBuffer sb = new StringBuffer();
String inputString;
do {
inputString = scanner.nextLine();
if (inputString.endsWith("#")) {
inputString = inputString.replace("#", "");
sb.append(inputString);
break;
}
sb.append(inputString + '\n');
//printString(sb.toString());
} while (true);
scanner.close();
return sb.toString();
}
/**
* 统计inputString字符串的单词数
* @param inputString
* @return
*/
public int countWords(String inputString) {
int wordCount = 0;
char[] charArray = inputString.toCharArray();
for (int i=0; i<charArray.length; i++) {
if (i==0) {
if (charArray[i] != ' ' && charArray[i] != '\n' && charArray[i] != '\t') { //如果第一个单词不是以空格,/n,/t开头的,wordCount自增
wordCount ++;
}
} else if ((charArray[i-1]==' ' || charArray[i-1] == '\n' || charArray[i] == '\t')&& (charArray[i] != ' ' && charArray[i] != '\n' && charArray[i] != '\t')) { //如果前面是空格,/n,/t,下一个字符不是空格/t,/n,wordCount自增
wordCount ++;
}
}
return wordCount;
}
/**
* 打印inputString
* @param inputString
*/
public void printString(String inputString) {
System.out.println(inputString);
}
/**
* @param args
*/
public static void main(String[] args) {
CountWordNumber countWordNumber = new CountWordNumber();
String inputString = countWordNumber.readString();
System.out.println("output content:");
countWordNumber.printString(inputString);
int countWords = countWordNumber.countWords(inputString);
System.out.println("Words counts:" + countWords);
}
}