Java 如何检查用户输入的字符串是否只包含字母?

Java 如何检查用户输入的字符串是否只包含字母?,java,Java,如何检查用户输入的字符串是否有效?例如,如果用户输入“cat”,则该字符串将有效,但如果用户输入“cat'12ed”,则该字符串将无效,因为它应仅包含字母。在Java中,您可以使用模式匹配检查字符串是字母还是字母数字,如下所示: public boolean validate(String myString) { if ( myString == null) return false; return myString.matches("[A-Za-z0-9]+"); } 还有c

如何检查用户输入的字符串是否有效?例如,如果用户输入“cat”,则该字符串将有效,但如果用户输入“cat'12ed”,则该字符串将无效,因为它应仅包含字母。

在Java中,您可以使用模式匹配检查字符串是字母还是字母数字,如下所示:

public boolean validate(String myString) {
    if ( myString == null) return false;
    return myString.matches("[A-Za-z0-9]+");
}

还有commons
StringUtils
,它有一个字母数字方法。

如果您希望字符串只有字母,则必须使用模式,例如:

if(Pattern.matches("[a-zA-Z]+", yourString)) {
//ok it's valid
} else {
//no, it'n not valid
}

试试正则表达式-这应该适合你

System.out.println("cat".matches("[a-zA-Z]+"));

System.out.println("cat'12ed".matches("[a-zA-Z]+"));

您还可以使用Apache Commons StringUtils:


这个问题可能是重复的。

你试过什么吗?你有什么代码要发布吗?虽然这个代码片段可以解决这个问题,但它确实有助于提高文章的质量。请记住,您将在将来回答读者的问题,这些人可能不知道您的代码建议的原因。