-3

我有一个代码,

import java.util.*;
import java.util.Scanner;
import java.util.StringTokenizer;
class CountWords{
    public static void main(String[] args) 
    {
        Scanner input=new Scanner(System.in);
        System.out.print("Enter string: ");
        String st=input.nextLine();
        int count=0;
        StringTokenizer stk=new StringTokenizer(st," ");
        while(stk.hasMoreTokens()){
            String token=stk.nextToken();
            count++;
        }
        System.out.println("Number of words are: "+count);
    }
}

我有一个要求,将输入作为字符串给出,例如 “This Is the!@* text to did() madam#$ split in to words”。

o/p:-

Number of words are: 10

我必须数一数。通过忽略字符串的特殊字符并将字符串存储到表列中,并将单词的反向存储在另一个表列中,例如(忽略字符串中的特殊字符)

sno    words     reverse
----   ------   --------
1       This      sihT
2       Is         sI
3       the       eht  
4       text      text 

所以.... on 如果字符串中有回文,则将这些单词保存在单独的表中,例如

word   palindrome
----   ---------
did     did
madam   madam

提前致谢

4

2 回答 2

0
public static void main(String[] args) {
    String str = "This is the!@* text to be in words.";
    str = str.replaceAll("[^a-zA-Z0-9 ]+", "");
    System.out.println(str);
    int len = str.split("\\s+").length;
    System.out.println(len);
}

我假设特殊字符不是字母和数字。

输出:

This is the text to be in words
8
于 2013-03-26T12:43:31.203 回答
0

处理凌乱的 HTML 很麻烦。使用 HTML 清理器实用程序,例如HtmlCleaner为您完成这项工作。

于 2013-03-26T12:42:30.800 回答