确定字符串中的数字

时间:2014-04-10 18:28:14

标签: java split numbers words

我有一个字符串数组,我试图找到每个字符串中的单词数。我理解如何找到单词的总数,但它也包含我不想要的数字。我已经尝试了s [i] .matches("。 \ d +。")但是只检查字符串中是否至少有一个数字。我试图找到总数(不是数字)。例如,一个字符串是" IN CONGRESS,1776年7月4日。"我的代码返回5个单词,即使只有3个单词,因为它包含2个数字。

2 个答案:

答案 0 :(得分:0)

总词 - 带数字的单词应该有用。使用以下正则表达式:

matches(".*[0-9].*")

答案 1 :(得分:0)

public static void main(String[] args)
{
    int count = 0;
    for (String str : "IN CONGRESS, July 4, 1776.".split("(\\s+)(\\,)*(\\.)*"))
    {
        if (!str.matches("(.)*(\\d)(.)*"))
        {
            count++;
            System.out.println("word "+count+":"+str);
        }
    }
    System.out.println("Total words:"+count);
}