【发布时间】:2016-02-24 21:45:46
【问题描述】:
如何检查用户输入的字符串是否有效?例如,如果用户输入“cat”,那么它将有效,但如果用户输入“cat'12ed”,那么它将无效,因为它应该只包含字母。
【问题讨论】:
-
你有没有尝试过?你有任何代码要发布吗?
-
Java Regex 可以为您轻松做到这一点。
标签: java
如何检查用户输入的字符串是否有效?例如,如果用户输入“cat”,那么它将有效,但如果用户输入“cat'12ed”,那么它将无效,因为它应该只包含字母。
【问题讨论】:
标签: java
在 Java 中,您可以使用模式匹配检查字符串是字母还是字母数字,如下所示:
public boolean validate(String myString) {
if ( myString == null) return false;
return myString.matches("[A-Za-z0-9]+");
}
还有公共StringUtils,它有一个字母数字方法。
【讨论】:
尝试正则表达式 - 这应该适合你
System.out.println("cat".matches("[a-zA-Z]+"));
System.out.println("cat'12ed".matches("[a-zA-Z]+"));
【讨论】:
如果你希望你的字符串只有字母时有效,你必须使用模式,例如:
if(Pattern.matches("[a-zA-Z]+", yourString)) {
//ok it's valid
} else {
//no, it'n not valid
}
【讨论】:
您也可以使用 Apache Commons StringUtils:StringUtils.isAlpha()。
此问题可能与this question 重复。
【讨论】: