1

我有一个用java创建的刽子手游戏。我想创建一个简单的函数来检查输入的单词是否有空格和/或特殊字符。

我找到了函数 String.replaceAll(),但我无法挖掘出一个预制函数,该函数返回一个布尔值是否存在特殊字符和/或空格。

那里已经有功能了吗?或者至少是一种更简单的方法来指定没有空格或特殊字符,而不是执行以下操作?

public  void checkWord()
    {
        boolean flag = false;
        for(int i=0;i<wordArray.length;i++)
        {
            if(wordArray[i] == '1' || wordArray[i] == '2' || wordArray[i] == '3' || wordArray[i] == '4' || wordArray[i] == '5' || wordArray[i] == '6' || wordArray[i] == '7' || wordArray[i] == '8' || wordArray[i] == '9'  )
            {
                flag = true;
            }
        }
        if(flag == true)
        {
            System.out.println("Invalid characters used in the word");
            System.exit(0);
        }
    }

函数越来越密集,我只介绍了数字。想法?

4

1 回答 1

4

您可以使用一个简单的正则表达式:

public boolean isValidWord(String w) {
    return w.matches("[A-Za-z]*");
}

正则表达式的解释:

[A-Za-z] - capital or lowercase letter
*        - zero or more

有关正则表达式的更多信息:http ://www.regular-expressions.info/

于 2013-01-31T02:04:00.467 回答